slarm64This forum is for the discussion of slarm64.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I've tried compiling Box64 which is an Arm app for running X86_64 arm programs on Aarch64.
It doesn't compile. The headers are a disaster area. It's still referencing /usr/include/asm, which afaik is deprecated. I went down in flames on /usr/include/linux/init.h and posted an issue on Github. He clearly used a different file than the 5.x kernels supply.
But I was struck by the number of headers I had to symlink into place that could only be found in the kernel source. They were not installed on my system. These were concentrated in: /usr/include/asm (now asm-generic); /usr/include/linux; and a few were in /usr/include/bits. The kernel-headers package is installed.
What I'm using is the binary image just after 15.0 with the 5.16.7 kernel, with the d/ directory and other missing packages from 15.0. I have XFCE, not kde. Have I missed installing headers somewhere?
I've tried compiling Box64 which is an Arm app for running X86_64 arm programs on Aarch64.
It doesn't compile. The headers are a disaster area. It's still referencing /usr/include/asm, which afaik is deprecated. I went down in flames on /usr/include/linux/init.h and posted an issue on Github. He clearly used a different file than the 5.x kernels supply.
But I was struck by the number of headers I had to symlink into place that could only be found in the kernel source. They were not installed on my system. These were concentrated in: /usr/include/asm (now asm-generic); /usr/include/linux; and a few were in /usr/include/bits. The kernel-headers package is installed.
What I'm using is the binary image just after 15.0 with the 5.16.7 kernel, with the d/ directory and other missing packages from 15.0. I have XFCE, not kde. Have I missed installing headers somewhere?
Code:
bash-5.2# ls /var/log/packages | grep kern.*header
kernel-headers-rk3399-4.4.302-aarch64-1mara
@sndwvs: I have kernel-headers-bcm2711-5.16.7-aarch64-1mara installed. What really prompted this was the number of good and existing headers that worked when I symlinked them in out of the source. I even had to link some only found in the ~arch/arm64/include/ directory. If you were following Pat's slackbuild for x86_64, the headers might hit issues.
Thanks for the Links. Qemu I had long fingered - "One of these days..." But box64 seems to be Aarch64 software, doing a linux-->linux translation, so I didn't expect overhead running or hassle building box64. Boy was I wrong. First I'll check out the slackbuild. It would be nice to get Zoom on that little RazPi.
@hazel: Maybe someone needs to tell pitSeb (author of box64) what headers he can & can't use!
That box64.Slackbuild is a pretty blank template which offers the standard recipe. To make box64 in it's present state would require significant surgery. I'm no developer, but I'm not useless at this stuff. If you have a txz, that's good news. But the SlackBuild certainly won't make one.
No word from pitSeb (the maintainer) yet. I'll give him a few days and then start on Qemu. I notice the github project is not very active.
Right, pitSeb said that it builds fine, and suggested firmly that there was a problem with the distro headers. There's a great deal of experience on this forum with building x86_64 software on Aarch64, but this is actually Aarch64 software, originally written for arm64/Aarch64.
Anyhow, I've compiled it 100% and the rest of this tells you how.
Make the directory /usr/include/asm
In the directory /usr/include/asm, run the following lndir commands
The reason for the particular order is that there is overlap, so the compile ended up with (or without) the wrong header more than once. That order worked. I used no switches on lndir, so the first file wrote and the second header with the same name threw an error. If you copied them in that order with '-n' the effect would be the same. pitSeb seems to love his headers; Every header had an #include, which was then read. So I was getting errors from 9 headers deep.
I also had to link half a dozen headers into /usr/include/linux. I think a lndir command may be possible there, although I was punished the once I tried it.
Last edited by business_kid; 11-27-2022 at 08:49 AM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.