SlackwareARM on RaspberryPI and soft/hard float
AFAIK SlackwareARM packages are compiled (for wide compatibility reasons) as soft-float on the ARM platform.
Not all SoC have hard-float and SlackwareARM aims at supporting as many as possible. Which is very good. My question is: on the RaspberryPI whose CPU include hardware floating point support, what would be necessary to be recompiled in the Slackware distro so that end user applications (that would benefit from using hard-float and be compiled with hard-float) would need to work properly ? Off the top of my head I'm thinking: glibc, some system utils, some libraries that would be used by such applications.. AFAIK the kernel (using FatDog's guide) is the binary official one from The Raspberry Foundation, which is hard-float compiled. Examples: image processing (imagemagic, jpeg, etc), video processing (ffmpeg, etc), mysql (if using FLOAT columns), ... (the list is open) I assume things like "ls" won't really need the upgrade. |
Quote:
So yes, if the CPU contains hardware floating point support, your kernel will be hard float. However, the kernel <-> userland syscall ABI is divorced from the userland ABI which is why you can run the soft float userland on a hard float kernel. Quote:
http://mindplusplus.wordpress.com/20...-raspberry-pi/ |
i think i have heard of - the kernel never ever use any floating point ...
|
drmozes, that someone was me. :) I rebuild Glibc using "-mfloat-abi=softfp" every time Slackware ARM gets a new version. If nothing else, it relieves some of the memory pressure on my first-edition RPi.
|
Quote:
Code:
mkdir -p slackware{64,arm}-current/source/d/kernel-headers/ |
Quote:
|
Build fails:
Code:
Creating Slackware package: /root/tgzstash/l/glibc-2.19-arm-3.txz |
Quote:
mkdir -p /root/tgzstash/l |
Quote:
It need more tests but i will do later. |
I will look into this. My instructions may be incomplete regarding the tgzstash/ directory.
|
I had an ABI version error when tried to startx:
Code:
francis@rpi:~$ startx |
Thanks to frushiyama for the package build bug report, and drmozes for recognizing the culprit. Yes, the a/ and l/ directories must be present under tgzstash/. I have fixed the build instructions.
frushiyama, I will look into the X problem. |
Problem confirmed. To make matters worse, reverting to glibc from -current didn't fix. However, I suspect an issue with the X server packages, as I've seen this before. Again, I'll look into it.
(And apologies for the long delay. I don't have Internet access at home.) |
Quote:
If the problem continues, look in the Xorg log to see which modules are being loaded and reply here. |
Quote:
Code:
echo "CFLAGS = -O2 -mfloat-abi=softfp -march=native -mtune=native" > /root/configparms Code:
echo "CFLAGS = -O2 -mfloat-abi=softfp -march=native -mtune=native" > /root/configparms |
All times are GMT -5. The time now is 10:28 AM. |