qLinux
… a distribution study
<< Prev Musl-1.2.2
Next >> Temporary Tools Part I
Temporary Tools Intro
Before going on check again the actual user and the actual environment.
Building the temporary tools like in chapters 6 and 7 of the book is straight forward. The main difference is to replace  /usr 
by  /qlnx 
, commonly used with the configure options. Having a symlink  $LFS/qlnx –> /qlnx 
makes the  DESTDIR=$LFS 
used with  make install 
obsolete.
However, it is may be a good idea to check the result after make. This could be done by
readelf -l <an elf binary in the source dir> | grep ld
after make and before make install. The result of the latter command have to show the correct built-in dynamic loader:
[Requesting program interpreter: /qlnx/lib/ld-musl-x86_64.so.1]
Locations
The temporary tools will be installed in the same locations like in the final system. To make sure they will be overwritten later on it is required to take care of these locations. From now on we have to keep special attention to this. Here is an overview of the related  configure 
options:
--bindir=/qlnx/bin --> usually this is "${prefix}/bin" --sbindir=/qlnx/bin --> a sbin directory is not required at all --libexecdir=/qlnx/bin/libexec --sysconfdir=/qlnx/etc --> usually this is "${prefix}/etc" --libdir=/qlnx/lib --> usually this is "${prefix}/lib" --datarootdir=/qlnx/dat --mandir=/qlnx/man --includedir=/qlnx/inc --runstatedir=/qlnx/run --localestatedir=/qlnx/var --docdir=/tmp --infodir=/tmp
This makes sure that all files will be installed in the proper location. We do not want senseless documentation or (tex)info files, thus at the end we wipe out the  /tmp 
directory.
There are some more exceptions which will be mentioned at time of their occurrence.
Prefix
During the build of the temporary tools the prefix is  –prefix=/qlnx 
always. Until a configure command is explicitly given for a package, this is the only one difference. Similar the  $DESTDIR=$LFS 
like in tthe book is not required, thus the install command is simply  make install 
.
Special: "--datarootdir"
This is an exception which requires special attention. In case a package installs shared data beside documentation it will be installed in  /qlnx/dat 
. As the installation directory of documentation relies on  –datarootdir 
the options  –docdir= 
,  –mandir 
and  –infodir 
have to be specified explicitly to the configure command.
Special: "--includedir"
If a package installs some header files the option  –includedir=/qlnx/inc 
will be spezified within the configure command.
Special: "--libexecdir"
If a libexec directory is used by a package, the option  –libexecdir=/qlnx/bin/libexec 
is added to the configure command (per qLinux convention).
Locale Data
Per convention of qLinux locale data will be installed in  qlnx/dat 
. Unfortunatily the option  –localedir=/qlnx/dat 
doesn't work with all packages properly. That's not a big issue as all locale data can be deleted at the end of the Temporary Tools section. In Install the Basic System all locales will be installed in their final location.
<< Prev Musl-1.2.2
        
Next >> Temporary Tools Part I