37

Let's assume that I am dropped into a room with a Raspberry Pi running either Debian or Raspbian. How do I find out if it has hard float support or if it is just using soft float?

48

Check for the existence of the directory:

/lib/arm-linux-gnueabihf

the soft-float version do not have this directory, they have:

/lib/arm-linux-gnueabi

instead, or you can list the packages installed using:

dpkg -l

and see the platform in the third column (all/armhf/armel)

  • 6
    Since someone just misinterpreted this, to make it absolutely clear: If you have a /lib/arm-linux-gnueabihf, your system is hard-float. – goldilocks Mar 25 '15 at 16:16
15

The accepted answer is correct, but a really simple method is:

dpkg --print-architecture

If your system is using a hard float architecture, you will then see:

armhf

ARM Hard Float. :-)

2

Issue the command:

readelf -A $(which dpkg)

On a hard-float (hf) system, you will see this as part of the output:

Tag_ABI_VFP_args: VFP registers

See http://www.cnx-software.com/2013/04/22/how-to-detect-if-an-arm-elf-binary-is-hard-float-armhf-or-soft-float-armel/

  • This also works on custom, non-Debian, non-Raspberry systems. I like that. – Johannes Overmann Dec 12 '18 at 8:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.