FHS defaults for samba4

Michael Sweet mike at easysw.com
Fri Jan 6 15:01:23 GMT 2006

[As Steinar mentioned, this is pretty off-topic for the list; I'm happy
  to continue off-line...]

Steve Langasek wrote:
> On Thu, Jan 05, 2006 at 03:36:57PM -0500, Michael Sweet wrote:
>> Steinar H. Gunderson wrote:
>>> On Thu, Jan 05, 2006 at 12:19:21PM -0700, John H Terpstra wrote:
>>>> For packaging we must move to %{_lib} which defaults to /lib on 32-bit 
>>>> systems and to /lib64 on 64-bit systems.
>>> Not all 64-bit systems will use /lib64 -- for instance, amd64 on Debian 
>>> uses
>>> /lib.
>> That's very, very unfortunate.  I *think* the LSB (still going through
>> it) requires /lib64 and /usr/lib64 for the 64-bit libraries, leaving
>> /lib and /usr/lib for 32-bit libraries so that existing 32-bit apps
>> will run unchanged on a 64-bit system.
>> Are you sure you are using a 64-bit install?
> I think the LSB requires LSB packages to install their libraries in /lib64
> and /usr/lib64, and it requires the 64-bit LSB linker to search these paths. 
> I doubt it specifies what other paths the LSB linker may or may not search,
> as this would rightly be out of scope for the LSB from what I can tell.
> On Debian, AIUI the standard linker does include /lib and /usr/lib in the
> path in addition to /lib64 and /usr/lib64, and uses the ELF header to
> discard libraries it finds which are inappropriate for the binary in
> question.  This doesn't help if a particular 64-bit library package installs
> in /usr/lib and you want to install a 32-bit variant, but I think that would
> be a distribution packaging issue and not an LSB issue; and in Debian, the
> current packaging infrastructure has quite finite support for biarch
> libraries.
> If you can point me to a part of the LSB that explicitly prohibits the setup
> I've described, I'll get on our amd64 porters to fix it; but anyway, I don't
> think any of this should be a problem for samba itself, as all possible
> combinations should be addressable with judicious use of --libdir.

I went through it as wasn't able to get any more information than what
was in in the AMD64 Core specs; basically, it sounds like things are
pretty much not clearly specified there... :(

However, FHS 2.3 (which is referenced by the LSB) *does* specify that
64 bit libraries on AMD64 go in /lib64 and /usr/lib64, *not* /lib and
/usr/lib, and by putting them there you are basically making it
impossible for an ISV to ship a single package that supports both
32-bit and 64-bit apps on multiple Linux distributions, which is the
point of the LSB...

In short, Debian is not LSB-compliant on AMD64 systems, and that makes
it unsuitable, at present, for general commercial support.

Michael Sweet, Easy Software Products           mike at easysw dot com
Internet Printing and Publishing Software        http://www.easysw.com

More information about the samba-technical mailing list