1

The Linux FHS (Filesystem Hierarchy Standard) refers to directories of the following form:

/lib<qual>

It describes such directories as follows:

There may be one or more variants of the /lib directory on systems which support more than one binary format requiring separate libraries.

Similarly, it refers to directories:

/usr/lib<qual>

And describes them as:

/usr/lib performs the same role as /usr/lib for an alternate binary format, except that the symbolic links /usr/lib/sendmail and /usr/lib/X11 are not required.

The FHS Wikipedia article gives the following alternate descriptions for these directories:

/lib<qual>

Alternate format essential libraries. Such directories are optional, but if they exist, they have some requirements.

/usr/lib<qual>

Alternate format libraries, e.g. /usr/lib32 for 32-bit libraries on a 64-bit machine (optional).

I'm assuming that the string <qual> is a mnemonic for something. Is it? If so, what does it represent?

4

"Qualifier"

a word or phrase, especially an adjective, used to attribute a quality to another word, especially a noun.

(in systemic grammar) a word or phrase added after a noun to qualify its meaning.

The strings 32 and 64 are qualifiers to the path /usr/lib that qualifies the path's use. With 32, making it /usr/lib32, it denotes the specific path for 32-bit (only) libraries, as the quoted text says, on 64-bit machines.


As Stephen Kitt points out in comments below, other qualifiers than just "the number of bits on an architecture" may be found on some systems, especially on MIPS systems.

  • 2
    +1. It might be worth pointing out that 32 and 64 aren’t the only qualifiers, MIPS for example has many more; but their purpose is always the same. – Stephen Kitt Jan 22 '18 at 17:35
  • That makes sense. Are there any other qualifiers besides the ones that specify the machine architecture? – igal Jan 22 '18 at 17:35
  • @StephenKitt Yeah, that's what I found confusing. I would have found lib<bits> (or something like that) to be more intuitive. – igal Jan 22 '18 at 17:36
  • 1
    @igal it’s always related to the machine architecture (or rather, the ABI supported by the binaries contained in the lib<qual> directory). Examples include x32 (for the x32 x86 ABI), n32 (some MIPS variant) etc. If you’re particularly curious you might enjoy the discussion of the various issues in this thread on Debian multi-arch. – Stephen Kitt Jan 22 '18 at 17:40

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.