% % This is part of LFSbookja package. % % This is a CTIE change file for the original XML source of the LFSbook. % @x @y @z @x Binutils-&binutils-version; - Pass 2 @y Binutils-&binutils-version; - 2回め @z @x Binutils tools, pass 2 @y Binutils &Tools;, 2回め @z @x Installation of Binutils @y &InstallationOf1;Binutils&InstallationOf2; @z @x Binutils ships an outdated libtool copy in the tarball. It lacks sysroot support so the produced binaries will be mistakenly linked to libraries from the host distro. Workaround this issue: @y Binutils の tarball では、古い libtool のコピーが提供されています。 これは sysroot サポートが行われていないので、ビルドされるバイナリが誤ってホストディストロのライブラリにリンクされてしまいます。 この問題を以下により回避します。 @z @x Create a separate build directory again: @y ビルドのためのディレクトリを再び生成します。 @z @x Prepare Binutils for compilation: @y &PreparePackage1;Binutils&PreparePackage2; @z @x The meaning of the new configure options: @y &MeaningOfOption1;configure&MeaningOfOption2; @z %@x CC=$LFS_TGT-gcc AR=$LFS_TGT-ar RANLIB=$LFS_TGT-ranlib % Because this is really a native build of Binutils, setting these % variables ensures that the build system uses the cross-compiler and % associated tools instead of the ones on the host system. %@y % % Binutils をネイティブにビルドすることが目的なので、ホストシステムに存在しているクロスコンパイラーや関連ツールは使わず、ビルドしているシステム内のものを用いるように指定します。 % %@z %@x --with-lib-path=/tools/lib % This tells the configure script to specify the library % search path during the compilation of Binutils, resulting in % /tools/lib being passed % to the linker. This prevents the linker from searching through % library directories on the host. %@y % % configure スクリプトに対して Binutils のコンパイル中でのライブラリパスを指定します。 % リンカーに対して /tools/lib ディレクトリを指定するものです。 % こうすることでリンカーがホスト上のライブラリを検索しないようにします。 % %@z %@x --with-sysroot % This defines a default (non-existent) sysroot directory % /tools/$LFS_TGT/sys-root. % It is useful when looking for shared objects which are required by % other shared objects explicitly included on the linker's command % line. Those objects are searched into the directories listed in % <sysroot>/etc/ld.so.conf, and failing % that, into the linker search path, which is right. If this switch % is not given, /etc/ld.so.conf on the host % is used, that is, programs may be linked to libraries on % the host, which we want to avoid. %@y % % これはデフォルトの(存在していない)sysroot ディレクトリ /tools/$LFS_TGT/sys-root を定義するものです。 % これは、リンカーのコマンドライン上に指定された共有オブジェクトに対し、そこから必要とされる共有オブジェクトを見つけ出せるようになります。 % 共有オブジェクトは <sysroot>/etc/ld.so.conf に設定されたディレクトリ内から検索され、 % 検索に失敗した場合はリンカーの検索パスが検索されます。 % この動きは合理的なものです。 % このスイッチが仮に設定されていなかったら、ホスト上の /etc/ld.so.conf が用いられます。 % つまりホスト上のライブラリにリンクされるプログラムが出てくることとなり、避けなければならないことです。 % %@z @x --enable-shared Builds libbfd as a shared library. @y libbfd を共有ライブラリとしてビルドします。 @z @x --enable-64-bit-bfd Enables 64-bit support (on hosts with narrower word sizes). May not be needed on 64-bit systems, but does no harm. @y 64 ビットサポートを有効にします(ホスト上にて、より小さなワードサイズとします)。 64 ビットシステムにおいては不要ですが、不具合を引き起こすものではありません。 @z @x Compile the package: @y &CompileThePackage; @z @x Install the package: @y &InstallThePackage; @z @x Details on this package are located in @y &Details1;&Details2; @z