On 2018-01-25 20:36, Javier Serrano Polo wrote: > X-Debbugs-CC: cl...@debian.org, adcon...@0c3.net > > Dear editors, > > I would appreciate if you could point me to the latest version of the > "System V Application Binary Interface: AMD64 Architecture Processor > Supplement", which seems to be draft version 0.99.7. > > I run AMD64 Linux systems that do not have a /lib64 directory. These > systems follow a multiarch structure, which allows to run programs from > any architecture, e.g. Intel386 on PowerPC. All program interpreters > have unique names and are located under /lib. AMD64 has > the /lib/ld-linux-x86-64.so.2 interpreter. > > Section 5.2.1 of the draft says: > > There is one valid program interpreter for programs conforming > to the AMD64 ABI: /lib/ld64.so.1 > However, Linux puts this in /lib64/ld-linux-x86-64.so.2 > > Could the following text be appended? > > Multiarch systems may put this in /lib/ld-linux-x86-64.so.2
No, this is not possible - it would break binary compatibility. The path is hardcoded into each binary and if you change it, your application will not run anywhere else, Andreas > "may put" could be "puts" if a distro like Debian did this. Debian > follows a multiarch structure too. It does not follow appendix A.1, > which says: > > Libraries conforming to the Intel386 ABI will live in the normal > places like /lib, /usr/lib and /usr/bin. Libraries following the > AMD64, will use lib64 subdirectories for the libraries, > e.g /lib64 and /usr/lib64. > > In multiarch systems, Intel386 libraries are under /lib/i386-linux-gnu > or /usr/lib/i386-linux-gnu, and AMD64 ones are > under /lib/x86_64-linux-gnu or /usr/lib/x86_64-linux-gnu. Could the > appendix show this fact? > > Thank you. > -- Andreas Jaeger aj@{suse.com,opensuse.org} Twitter: jaegerandi SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg) GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126