[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#325226: libc6: Wrong dynamic linker on amd64



Andreas Jochens a écrit :
On 06-Feb-10 13:06, Aurelien Jarno wrote:

That let me ask about having /lib64 as the real directory, and /lib as
a symlink. At least it would make the /lib64 directory compliant with
the FHS.

Do you know what kind of problem that could cause, other than a complex
upgrade?


This question has a technical and a "political" answer.

From the technical point of view it should be possible to make /lib64
a real directory and /lib a symlink to /lib64. But this would not
get us any closer to the current FHS because with /lib being a
symlink to /lib64 we still could not put 32-bit libraries in /lib as the current FHS requires.

A full FHS conforming setup where 64-bit libraries are in /lib64 and 32-bit libraries in /lib would be _very_ difficult to achieve. The Debian amd64 porting team tried this at the beginning, but it turned out that this would involve many (ugly) changes to quite a lot of packages. So this is almost certainly not an option for Debian.

Moreover, I think that the FHS is at fault here. It is simply
_wrong_ to change the established standard filesystem layout which places native libraries in (/usr)/lib and put them
in some other directory like /lib64 instead.

Ok, I better see the problem now. Using this reasoning it will even be good to have a (/usr)/lib32 defined in the FHS, with (/usr)/lib32 being a link to (/usr)/lib on plain i386 systems. This is why I am trying to do with the patch for the i386 libc on amd64.


The FHS should be changed to allow the amd64 port to use the standard directories (/usr)/lib for its native libraries. I filed a corresponding
request to the FHS mailing list a while ago but I did not get any answer
yet. It would probably help if people who are more important than me
would support this request.

Note that some of the misp people have tri-arch patch pending, where (/usr)/lib, (/usr)/lib32 and (/usr)/lib64 are containing different ABI (two of them beeing a 32-bit ABI). So they really need (/usr)/lib32. You may try to contact them, so they could do the same demand. There is some posts about that on debian-mips in November 2005

I could also try to send a mail if you want, it will probably be ignored, but who knows.

Currently, Redhat and Suse install the native amd64 libraries in /lib64 while Debian, Ubuntu and Gentoo install them in /lib where they belong.

Well if I am right, Redhat and Suse does not have a full 64-bit system, but a 32-bit system with a few 64-bit libraries. At least it was the case for Suse last time I have checked. It looks like the FHS is done for them. They could probably be compared with Debian i386, which also supports 64-bit libraries in the way recommended by the FHS.

I do not see any reason why the FHS should prohibit the saner approach
used by Debian, Ubuntu and Gentoo.

Given what if I have said in the previous paragraph, it looks like there are two different problems (64-bit system with a few 32-bit libraries and a 32-bit system with a few 64-bit libraries), and the FHS only give a recommendation for one of them.

Bye,
Aurelien

--
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian developer           | Electrical Engineer
 `. `'   aurel32@debian.org         | aurelien@aurel32.net
   `-    people.debian.org/~aurel32 | www.aurel32.net



Reply to: