> > Ref:
> >
> > Linux From Scratch - Version SVN-20181106 Chapter 6. Installing Basic 
> > System Software 6.9. Glibc-2.28
> >
> > The instructions mention:
> > 
> > libc_cv_slibdir=/lib
> > This variable sets the correct library for all systems. We do not want
> > lib64 to be used.
> >
> > ..but after installation I needed the following sed for this to be true
> > 
> > sed -i 's@lib64/ld-linux-x86-64.so.2@lib/ld-linux-x86-64.so.2@'
> > /usr/bin/ldd
> > 
> Although it probably won't hurt on LFS (as we use the Debian style layout
> for multilib so that both work), the change you suggested, technically breaks 
> ABI
> (though it's covered in ld.so.conf, I believe).
> 
> The description for that instruction should probably be clarified to suggest
> that this is the root library 'installation' directory (slib). But bottom 
> line, no matter
> what you do, any 3rd party binaries installed later will refer to
> /lib64/ld-linux-x86-64.so.2 (as well as any installed by your LFS toolchain 
> unless
> you've made further adjustments to the linker search paths in linux{,-64}.h
> files at the beginning of the glibc instructions).
> 
> You could probably edit some (most?) binaries with two additional spaces if
> you really want to excise the '64' in that path, but it would be far from the 
> standard.
> Probably best to leave it as is (obvious exception for understanding the 
> mechanics
> if you want to fiddle with it or hack together a custom arch value or 
> something - but
> that's far more involved than some glibc header changes :-) ).
> 
> If any of the above is unclear, please inquire as I'd like to try and make 
> this
> as clear as possible for all readers. Any text suggestions to help make it 
> more
> transparent (in addition to the already mentioned change) would be greatly 
> appreciated as well.
> 
Thanks for the reply.

What is unclear to me is why, if LFS is going to leave the loader in /lib64, go 
to the trouble of installing glibc libs to /lib and gcc libs to /usr/lib - it 
would seem logical that everything either goes in:

/lib, /usr/lib, /usr/local/lib

Or

/lib64, /usr/lib64, /usr/local/lib64

It's true that a few pre-built binaries - Firefox, Skype - expect the loader to 
be in /lib64, but I suspect this will change soon.

Regards
John
-- 
http://lists.linuxfromscratch.org/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to