How to determine hard float vs. soft float

Greetings all
As I understand it, the Debian distribution installed on the most recent BBBs is configured for hard float. If I were to install another flavor of Linux, or even an updated version of Debian, how would I determine if it’s been configured to use hard float or soft float? Is there any way other than compiling with one option or the other and trying to make sense of the errors?

If the architecture is armhf that’s hardfloat and requires a minimum of armv5. armel is softfloat and can run on arm7tdmi (armv4).

Find any local binary like /bin/ls and do an ld on it. It links to an ld library with armel or armhf in the name.

You’ll find armel libraries in there too along with armhf ld libraries, but MOST of the binaries will be armhf. For armel platforms you’ll only see armel (or the even older arm)

-Ghazan Haider

Find any local binary like /bin/ls and do an ld on it. It links to an ld library with armel or armhf in the name.

You would want to use ldd, probably not ld.

Usage: ldd /bin/ls /* going by above example */

Heh, another way I just figured out ( never noticed it before ) is to just do . .

$ ls /lib/

there is a arm-linux-gnueabihf directory and a ld-linux-armhf.so.3 file. Both of these should make it painfully obvious.

I have no idea why, but I’ve got both an arm-linux-gnueabihf directory and an arm-linux-gnueabi (i.e no "hf’) directory. From what you’ve said, I’d guess I’ve installed something I shouldn’t have installed. Presumably, if I check immediately after installing a new OS, I wouldn’t have the problem.

Much obliged, folks.

Tim, yeah I do not know about that but using ldd as described above will pretty much tell you what your systems tools expect at any rate.

That's multiarch.

I eventually removed that in the default wheezy images, it didn't
support enough out of the box, and only caused more issues.. (Jessie
and later has better multi-arch support)

Regards,