5.9.1. Instalarea Binutils
Creați din nou un director de compilare separat:
mkdir -v build cd build
mkdir -v build cd build
Pregătiți Binutils pentru compilare:
CC=$LFS_TGT-gcc \
AR=$LFS_TGT-ar \
RANLIB=$LFS_TGT-ranlib \
../configurează \
--prefix=/instrumente \
--disable-nls \
--disable-werror \
--with-lib-path=/tools/lib \
--cu-syroot
CC=$LFS_TGT-gcc \
AR=$LFS_TGT-ar \
RANLIB=$LFS_TGT-ranlib \
../configurează \
--prefix=/instrumente \
--disable-nls \
--disable-werror \
--with-lib-path=/tools/lib \
--cu-syroot
Semnificația noilor opțiuni de configurare:
CC=$LFS_TGT-gcc AR=$LFS_TGT-ar RANLIB=$LFS_TGT-ranlib
Deoarece aceasta este într-adevăr o versiune nativă a Binutils, setarea acestor variabile asigură că sistemul de compilare utilizează compilatorul încrucișat și instrumentele asociate în loc de cele de pe sistemul gazdă.
--with-lib-path=/tools/lib
Aceasta îi spune scriptului de configurare să specifice calea de căutare a bibliotecii în timpul compilării Binutils, rezultând în / instrumente/lib fiind transmis către linker. Acest lucru împiedică linkerul să caute prin directoarele bibliotecii de pe gazdă.
--cu-syroot
Caracteristica sysroot permite linkerului să găsească obiecte partajate care sunt cerute de alte obiecte partajate incluse în mod explicit pe linia de comandă a linkerului. Fără aceasta, este posibil ca unele pachete să nu fie construite cu succes pe unele gazde.
Compilați pachetul:
face
face
Instalează pachetul:
make install
make install
Acum pregătiți linkerul pentru faza de „Reajustare” din următorul capitol:
face -C ld curat
make -C ld LIB_PATH=/usr/lib:/lib cp -v ld/ld-new /tools/bin
face -C ld curat
make -C ld LIB_PATH=/usr/lib:/lib cp -v ld/ld-new /tools/bin
Semnificația parametrilor de fabricație:
-C ld curat
Aceasta îi spune programului make să elimine toate fișierele compilate din ld subdirector.
-C ld LIB_PATH=/usr/lib:/lib
Această opțiune reconstruiește totul în ld subdirectorul. Specificând LIB_PATH Variabila Makefile de pe linia de comandă ne permite să suprascriem valoarea implicită a instrumentelor temporare și să o îndreptăm către calea finală adecvată. Valoarea acestei variabile specifică calea de căutare implicită a bibliotecii de linker. Acest preparat este folosit în capitolul următor.