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