From: matsuand <30614168+matsuand@users.noreply.github.com> Date: Thu, 12 May 2022 12:35:07 +0000 (+0900) Subject: [lfsja-git] r11.1-117 対応。 X-Git-Url: http://git.osdn.net/view?p=lfsbookja%2Flfsja-git.git;a=commitdiff_plain;h=8f9a15cb3eef154f8441ca0d99b5e96a02d1e899 [lfsja-git] r11.1-117 対応。 --- diff --git a/configure b/configure index 6af959db..b100c412 100755 --- a/configure +++ b/configure @@ -4737,7 +4737,7 @@ fi -TARGETVER=r11.1-92 +TARGETVER=r11.1-117 if test "x$revspec" = "xsystemd"; then TARGETVER="$TARGETVER-systemd" fi diff --git a/src/chapter01/changelog.ch b/src/chapter01/changelog.ch index e92cddff..f956d14d 100644 --- a/src/chapter01/changelog.ch +++ b/src/chapter01/changelog.ch @@ -44,6 +44,120 @@ @z @x + 2022-05-01 + + + [bdubbs] - Update to openssl-3.0.3. Fixes + #5057. + + +@y + 2022-05-01 + + + [bdubbs] - openssl-3.0.3 へのアップデート。 + #5057 を Fix に。 + + +@z + +@x + 2022-05-01 + + + [bdubbs] - Change nobody/nogroup uid/gid to 65534. + + + [bdubbs] - Update to meson-0.62.1. Fixes + #5052. + + + [bdubbs] - Update to libpipeline-1.5.6. Fixes + #5053. + + + [bdubbs] - Update to elfutils-0.187. Fixes + #5054. + + + [bdubbs] - Update to Jinja2-3.1.2. Fixes + #5055. + + + [bdubbs] - Update to vim-8.2.4814. Addresses + #4500. + + + [bdubbs] - Update to sysvinit-3.03. Fixes + #5046. + + + [bdubbs] - Update to linux-5.17.5. Fixes + #5050. + + + [bdubbs] - Update to gcc-11.3.0. Fixes + #5051. + + + [bdubbs] - Update to coreutils-9.1. Fixes + #5048. + + + [bdubbs] - Update to bc-5.2.4. Fixes + #5049. + + +@y + 2022-05-01 + + + [bdubbs] - nobody/nogroup の uid/gid を 65534 に変更。 + + + [bdubbs] - meson-0.62.1 へのアップデート。 + #5052 を Fix に。 + + + [bdubbs] - libpipeline-1.5.6 へのアップデート。 + #5053 を Fix に。 + + + [bdubbs] - elfutils-0.187 へのアップデート。 + #5054 を Fix に。 + + + [bdubbs] - Jinja2-3.1.2 へのアップデート。 + #5055 を Fix に。 + + + [bdubbs] - vim-8.2.4814 へのアップデート。 + #4500 において言及。 + + + [bdubbs] - sysvinit-3.03 へのアップデート。 + #5046 を Fix に。 + + + [bdubbs] - linux-5.17.5 へのアップデート。 + #5050 を Fix に。 + + + [bdubbs] - gcc-11.3.0 へのアップデート。 + #5051 を Fix に。 + + + [bdubbs] - coreutils-9.1 へのアップデート。 + #5048 を Fix に。 + + + [bdubbs] - bc-5.2.4 へのアップデート。 + #5049 を Fix に。 + + +@z + +@x 2022-04-15 diff --git a/src/chapter01/jchangelog.ch b/src/chapter01/jchangelog.ch index 0c830eb3..994fac0d 100644 --- a/src/chapter01/jchangelog.ch +++ b/src/chapter01/jchangelog.ch @@ -50,6 +50,17 @@ --> + 2022-05-12 + + + [matsuand] - + r11.1-117 (59d5489ff) までの対応。 + + + + + + 2022-04-22 diff --git a/src/chapter05/gcc-pass1.ch b/src/chapter05/gcc-pass1.ch index b768eb53..1f53db5d 100644 --- a/src/chapter05/gcc-pass1.ch +++ b/src/chapter05/gcc-pass1.ch @@ -69,52 +69,6 @@ @z -%@x -% The following command will change the location of GCC's default -% dynamic linker to use the one installed in /tools. It also removes /usr/include from GCC's include search path. -% Issue: -%@y -% -% 以下のコマンドは GCC のデフォルトのダイナミックリンカーの配置ディレクトリを、既にインストールされている /tools とします。 -% また GCC のインクルードパスから /usr/include を除きます。 -% -%@z - -%@x -% In case the above seems hard to follow, let's break it down a bit. -% First we copy the files gcc/config/linux.h, -% gcc/config/i386/linux.h, and -% gcc/config/i386/linux64.h to a file of -% the same name but with an added suffix of .orig. Then the -% first sed expression prepends /tools to every instance of -% /lib/ld, /lib64/ld or -% /lib32/ld, while the second one replaces hard-coded -% instances of /usr. Next, we add our define statements which -% alter the default startfile prefix to the end of the file. Note that the -% trailing / in /tools/lib/ is required. -% Finally, we use touch to update the timestamp on the -% copied files. When used in conjunction with cp -u, this -% prevents unexpected changes to the original files in case the commands are -% inadvertently run twice. -%@y -% -% 上のコマンドがよく分からない場合は一つ一つ読み下していってください。 -% まず gcc/config/linux.h, -% gcc/config/i386/linux.h, and -% gcc/config/i386/linux64.h というファイルを、ファイル名称の末尾に .orig を付け加えてコピーします。 -% そして一つめの sed コマンドでは、そのファイル内にある/lib/ld, /lib64/ld, /lib32/ldという記述部分の頭に/toolsを付与します。 -% また二つめの sed コマンドによってハードコーディングされている/usrという部分を書き換えます。 -% そしてここで加えるべき定義文をファイルの末尾に追加し、検索パスと startfile プリフィックスを変更します。 -% この際に/tools/lib/の終わりには/が必要となります。 -% 最後に touch によってコピーしたファイルのタイムスタンプを更新します。 -% cp -u を用いるのは、誤ってコマンドを二度起動したとしてもオリジナルファイルを壊さないようにするためです。 -% -%@z - @x On x86_64 hosts, set the default directory name for 64-bit libraries to lib: @@ -124,26 +78,6 @@ @z -%@x -% GCC doesn't detect stack protection correctly, which causes problems -% for the build of Glibc-&glibc-version;, so fix that by issuing the following -% command: -%@y -% -% GCC はスタックプロテクション (stack protection) を正しく検出しません。 -% このことは Glibc-&glibc-version; においてビルドする際には問題となります。 -% そこで以下のコマンドを実行することで解消します。 -% -%@z - -%@x -% Also fix a problem identified upstream: -%@y -% -% アップストリームが認識している問題を修正します。 -% -%@z - @x The GCC documentation recommends building GCC in a dedicated build directory: @@ -204,49 +138,6 @@ @z -%@x --with-local-prefix=/tools -% The local prefix is the location in the system that GCC will search -% for locally installed include files. The default is /usr/local. -% Setting this to /tools helps keep the host location of -% /usr/local out of this GCC's search path. -%@y -% -% ローカルプリフックス (local prefix) は、GCC がローカルにインストールされているインクルードファイルを探しにいくディレクトリを意味します。 -% そのデフォルトは /usr/local です。 -% この設定を /tools とすることで、GCC が探し出すパスから /usr/local を除外します。 -% -%@z - -%@x --with-native-system-header-dir=/tools/include -% By default, GCC searches /usr/include for -% system headers. In conjunction with the sysroot switch, this would -% normally translate to $LFS/usr/include. However -% the headers that will be installed in the next two sections will go -% to $LFS/tools/include. This switch ensures that -% gcc will find them correctly. In the second pass of GCC, this same -% switch will ensure that no headers from the host system are -% found. -%@y -% -% GCC がシステムヘッダーを探し出すデフォルトのパスは /usr/include です。 -% 後に root を変更する際には、このディレクトリは $LFS/usr/include となります。 -% しかしこの直後の2つの作業を通じて、ヘッダーをインストールする先は $LFS/tools/include としています。 -% つまり本スイッチは GCC がヘッダーを正しく見つけ出せるようにするものです。 -% GCC の2回めのビルドでは、同じスイッチを用いて、ホストシステムのヘッダーは一切見つけ出さないようにします。 -% -%@z - -@x --enable-initfini-array - This switch forces the use of some internal data structures - that are needed but cannot be detected when building a cross - compiler. -@y - - このスイッチは内部データ構造を利用することを指示します。 - クロスコンパイラーのビルド時にこれが必要になりますが、自動では設定されません。 - -@z - @x --disable-shared This switch forces GCC to link its internal libraries statically. We need this because the shared libraries require glibc, @@ -298,44 +189,12 @@ GCC をコンパイルします。 @z -%@x -% Compilation is now complete. At this point, the test suite would -% normally be run, but, as mentioned before, the test suite framework is -% not in place yet. The benefits of running the tests at this point -% are minimal since the programs from this first pass will soon be -% replaced. -%@y -% -% コンパイルが終了しました。 -% この時点でもテストスイートを実行することはできます。 -% ただ前にも述べているように、テストスイートのフレームワークがまだ準備できていません。 -% さらにこの時点で生成されるプログラムは、すぐに次の生成作業によって置き換えられますから、この時点でテストを実行することはあまり意味がありません。 -% -%@z - @x Install the package: @y &InstallThePackage; @z -% @x -% Using --disable-shared means that the -% libgcc_eh.a file isn't created and installed. The -% Glibc package depends on this library as it uses -% -lgcc_eh within its build system. This dependency -% can be satisfied by creating a symlink to libgcc.a, -% since that file will end up containing the objects normally contained in -% libgcc_eh.a: -% @y -% -% --disable-shared オプションを指定すると libgcc_eh.a を生成せずインストールしません。 -% Glibc パッケージはこのライブラリに依存しており、ビルドの際に -lgcc_eh を指定することで利用されます。 -% 依存している点は libgcc.a へのシンボリックリンクを生成しておけば問題はありません。 -% libgcc_eh.a に含まれるオブジェクトが、最終的には libgcc.a の中にも含まれることになるからです。 -% -% @z - @x This build of GCC has installed a couple of internal system headers. Normally one of them, limits.h, would in turn diff --git a/src/chapter06/gcc-pass2.ch b/src/chapter06/gcc-pass2.ch index 7a46fbbd..3ca675d1 100644 --- a/src/chapter06/gcc-pass2.ch +++ b/src/chapter06/gcc-pass2.ch @@ -50,17 +50,6 @@ @z -%@x -% Once again, change the location of GCC's default dynamic linker to -% use the one installed in /tools. -%@y -% -% もう一度、GCC のデフォルトのダイナミックリンカーの配置ディレクトリを、既にインストールされている /tools とします。 -% -%@z - @x If building on x86_64, change the default directory name for 64-bit libraries to lib: @@ -70,47 +59,6 @@ @z -%@x -% Our first build of GCC has installed a couple of internal system -% headers. Normally one of them, limits.h, will in turn -% include the corresponding system limits.h header, in -% this case, /tools/include/limits.h. However, at the -% time of the first build of gcc /tools/include/limits.h -% did not exist, so the internal header that GCC installed is a partial, -% self-contained file and does not include the extended features of the -% system header. This was adequate for building the temporary libc, but this -% build of GCC now requires the full internal header. Create a full version -% of the internal header using a command that is identical to what the GCC -% build system does in normal circumstances: -%@y -% -% 第1回めの GCC のビルドでは、内部的なシステムヘッダーをインストールしています。 -% その1つ limits.h は、これに対応づくシステムヘッダー limits.h を読み込みます。 -% そのファイルは実際には /tools/include/limits.h となります。 -% しかし 1 回めの GCC のビルド時には /tools/include/limits.h は存在しません。 -% したがって GCC がインストールする内部ヘッダーは、部分的で自己完結した (self-contained) もののみとなり、システムヘッダーが持つ拡張機能は含まれません。 -% 一時的な libc を構築するならこれは正しかったのですが、この段階での GCC のビルドでは、内部ヘッダーが完全な形のものでなければなりません。 -% 完全な内部ヘッダーを生成するために、GCC ビルドシステムが通常行っている方法と同じようにするための、以下のコマンドを実行します。 -% -%@z - -%@x -% Fix an issue with GCC-10.1 when building with a cross -% compiler: -%@y -% -% クロスコンパイラーを使ってビルドするにあたり、GCC-10.1 の問題を修正します。 -% -%@z - -@x - Fix an issue causing failure cross-compiling libstdc++: -@y - - libstdc++ のクロスコンパイルができなくなっている問題を修正します。 - -@z - @x Override the building rule of libgcc and libstdc++ headers, to allow building these libraries with POSIX threads support: @@ -149,46 +97,6 @@ &MeaningOfOption1;configure&MeaningOfOption2; @z -%@x --enable-languages=c,c++ -% This option ensures that both the C and C++ compilers are -% built. -%@y -% -% C と C++ の両コンパイラーを生成することを指示します。 -% -%@z - -%@x --disable-libstdcxx-pch -% Do not build the pre-compiled header (PCH) for -% libstdc++. It takes up a -% lot of space, and we have no use for it. -%@y -% -% libstdc++ に対してプリコンパイルヘッダー (pre-compiled header; PCH) をビルドしないように指示します。 -% これを含めてしまうとサイズが増えることになり、そもそも利用する必要がありません。 -% -%@z - -%@x --disable-bootstrap -% For native builds of GCC, the default is to do a "bootstrap" -% build. This does not just compile GCC, but compiles it several times. -% It uses the programs compiled in a first round to compile itself a -% second time, and then again a third time. The second and third -% iterations are compared to make sure it can reproduce itself -% flawlessly. This also implies that it was compiled correctly. -% However, the LFS build method should provide a solid compiler -% without the need to bootstrap each time. -%@y -% -% GCC のネイティブビルドを行うには、デフォルトでは "ブートストラップ" ビルドを行ないます。 -% これは単に GCC をコンパイルするのではなく、数回のコンパイルを繰り返します。 -% つまり一回めにビルドされたプログラムを使って二回め、三回めのコンパイルを行うものです。 -% 二回め、三回めとコンパイルを繰り返すのは、これによって自分自身を再生成して完璧なものを作り出すためです。 -% このことによってコンパイルが正確に行われたことを暗に示すことにもなります。 -% しかし LFS のビルドでは、何度もブートストラップを行う必要のない、手堅い(solid) コンパイラーを作り出します。 -% -%@z - @x -with-build-sysroot=$LFS Normally, using --host ensures that a cross-compiler is used for building GCC, and that compiler knows @@ -286,74 +194,6 @@ @z -%@x -% At this point, it is imperative to stop and ensure that the basic -% functions (compiling and linking) of the new toolchain are working as -% expected. To perform a sanity check, run the following commands: -%@y -% -% この時点で、構築したツールチェーンの基本的な (コンパイルやリンクなどの) 機能が正しく動作していることを確認する必要があります。 -% 健全性検査 (sanity check) を行うために以下を実行してください。 -% -%@z - -%@x -% If everything is working correctly, there should be no errors, -% and the output of the last command will be of the form: -%@y -% -% 問題なく動作した場合はエラーがなかったということで、最後のコマンドから出力される結果は以下のようになるはずです。 -% -%@z - -%@x -% Note that the dynamic linker will be /tools/lib/ld-linux.so.2 -% for 32-bit machines. -%@y -% -% 32 ビットマシンに対するダイナミックリンカーは /tools/lib/ld-linux.so.2 となります。 -% -%@z - -%@x -% If the output is not shown as above or there was no output at all, -% then something is wrong. Investigate and retrace the steps to find out -% where the problem is and correct it. This issue must be resolved before -% continuing on. First, perform the sanity check again, using -% gcc instead of cc. If this works, -% then the /tools/bin/cc symlink is -% missing. Install the symlink as per above. -% Next, ensure that the PATH is correct. This -% can be checked by running echo $PATH and verifying that -% /tools/bin is at the head of the -% list. If the PATH is wrong it could mean that you are not -% logged in as user lfs or that -% something went wrong back in -%@y -% -% コマンドの出力結果が上と異なっていたり、あるいは何も出力されなかった場合は、何かがおかしいことを意味します。 -% どこに問題があるのか調査、再試行を行って解消してください。 -% 解決せずにこの先に進まないでください。 -% cc ではなく gcc を使って再度健全性検査を行ってみてください。 -% これで解決したなら /tools/bin/cc のシンボリックリンクが正しくないということです。 -% 正しく生成し直してください。 -% また環境変数 PATH が正しいかどうかも確認してください。 -% echo $PATH を実行して、実行パスリストの先頭が /tools/bin であるかどうか確認します。 -% PATH が間違っていたなら、実はあなたは lfs ユーザーでログインしていないのかもしれませんし での作業に間違いがあったのかもしれません。 -% -%@z - -%@x -% Once all is well, clean up the test files: -%@y -% -% すべてが終了したらテストファイルを削除します。 -% -%@z - @x Details on this package are located in diff --git a/src/chapter07/createfiles.ch b/src/chapter07/createfiles.ch index 153455c7..d50a019a 100644 --- a/src/chapter07/createfiles.ch +++ b/src/chapter07/createfiles.ch @@ -15,185 +15,6 @@ 重要なファイルとシンボリックリンクの生成 @z -%@x -% Some programs use hard-wired paths to programs which do not exist yet. -% In order to satisfy these programs, create a number of symbolic links which -% will be replaced by real files throughout the course of this chapter after the -% software has been installed: -%@y -% -% プログラムの中には固定的に他のプログラムへのパスを保持しているものがあります。 -% そのパスは今の時点ではまだ存在していません。 -% このようなプログラムを正しく動作させるため、シンボリックリンクをいくつか作成します。 -% このリンクは本章の作業を通じて各種ソフトウェアをインストールしていくことで、 その実体であるファイルに置き換えられていきます。 -% -%@z - -%@x -% The purpose of each link: -%@y -% 各リンクの目的 -%@z - -%@x /bin/bash -% Many bash scripts specify -% /bin/bash. -%@y -% -% bash スクリプトはたいてい /bin/bash として記述されます。 -% -%@z - -%@x /bin/cat -% This pathname is hard-coded into Glibc's configure script. -%@y -% -% このパス名は Glibc の configure スクリプトにてハードコーディングされています。 -% -%@z - -%@x /bin/dd -% The path to dd will be hard-coded into the -% /usr/bin/libtool utility. -%@y -% -% dd へのパスが /usr/bin/libtool ユーティリティーにハードコーディングされます。 -% -%@z - -%@x /bin/echo -% This is to satisfy one of the tests in Glibc's test suite, which -% expects /bin/echo. -%@y -% -% Glibc のテストスイートの中に /bin/echo を用いているものがあり、これを成功させるためです。 -% -%@z - -%@x /usr/bin/env -% This pathname is hard-coded into some packages build procedures. -% -%@y -% -% このパスは、パッケージのビルドを通じてハードコーディングされることがあります。 -% -% -%@z - -%@x /usr/bin/install -% The path to install will be hard-coded into -% the /usr/lib/bash/Makefile.inc file. -%@y -% -% install へのパスが /usr/lib/bash/Makefile.inc ファイル内にてハードコーディングされます。 -% -%@z - -%@x /bin/ln -% The path to ln will be hard-coded into the -% /usr/lib/perl5/&perl-version;/<target-triplet>/Config_heavy.pl -% file. -%@y -% -% ln へのパスが /usr/lib/perl5/&perl-version;/<target-triplet>/Config_heavy.pl ファイル内にてハードコーディングされます。 -% -%@z - -%@x /bin/pwd -% Some configure scripts, particularly Glibc's, -% have this pathname hard-coded. -%@y -% -% 特に Glibc などの configure スクリプトにて、このパス名がハードコーディングされています。 -% -%@z - -%@x /bin/rm -% The path to rm will be hard-coded into the -% /usr/lib/perl5/&perl-version;/<target-triplet>/Config_heavy.pl -% file. -%@y -% -% rm へのパスが /usr/lib/perl5/&perl-version;/<target-triplet>/Config_heavy.pl ファイル内にてハードコーディングされます。 -% -%@z - -%@x /bin/stty -% This pathname is hard-coded into Expect, therefore it is needed -% for Binutils and GCC test suites to pass. -%@y -% -% このパス名は Expect にてハードコーディングされています。 -% したがって Binutils と GCC のテストスイートを成功させるために必要となります。 -% -%@z - -%@x /usr/bin/perl -% Many Perl scripts hard-code this path to the -% perl program. -%@y -% -% perl コマンドに対して Perl スクリプトはたいていこのパス名を用いています。 -% -%@z - -%@x /usr/lib/libgcc_s.so -% Glibc needs this for the pthreads library to work. -%@y -% -% pthreads ライブラリが正常動作するように Glibc にとって必要となります。 -% -%@z - -%@x /usr/lib/libstdc++{,.6} -% This is needed by several tests in Glibc's test suite, as well as -% for C++ support in GMP. -%@y -% -% Glibc のテストスイート、例えば GMP における C++ サポートなどにおいて、これを必要とするものがあります。 -% -%@z - -%@x /bin/sh -% Many shell scripts hard-code /bin/sh. -%@y -% -% シェルスクリプトはたいてい /bin/sh がハードコーディングされています。 -% -%@z - -%@x /usr/lib/lib{blkid,fdisk,mount,uuid}.so*, /usr/include/{blkid,libfdisk,libmount,uuid}, /usr/lib/pkgconfig/{blkid,fdisk,mount,uuid}.pc -% These links and files allow -% eudev -% systemd to find the -% util-linux libraries installed in chapter 5, without creating -% wrong references to /tools. The uuid library is also needed for -% building a python module. -%@y -% -% このリンクやファイルにより、 -% eudev -% systemd -% が第 5 章にてインストールした util-linux のライブラリを探し出せるようにします。 -% ここで /tools への誤った参照は作らないようにしています。 -% また python モジュールをビルドできるようにするため uuid ライブラリも必要となります。 -% -%@z - -%@x /tools/lib/locale/locale-archive -% Some programs built in chapter 5 look for installed -% locale descriptions in this file. The locale descriptions will be -% installed in /usr/lib/locale/locale-archive -% after building the final glibc. The symlink allows those programs -% to use the installed locales. -%@y -% -% 第 5 章にてビルドしたプログラムの中には、インストール済のこのファイル内のロケール記述を検索するものがあります。 -% そのロケール記述は、最終的な glibc がビルドされた後は /usr/lib/locale/locale-archive にインストールされます。 -% 以下のシンボリックリンクを作成することで、現在インストールされているロケール記述をそういったプログラムが利用できるようにします。 -% -%@z - @x Historically, Linux maintains a list of the mounted file systems in the file /etc/mtab. Modern kernels maintain this list @@ -268,9 +89,14 @@ url="http://refspecs.linuxfoundation.org/lsb.shtml"/>) only recommends that, besides the group root with a Group ID (GID) of 0, a group bin - with a GID of 1 be present. All other group names and GIDs can be chosen - freely by the system administrator since well-written programs do not depend - on GID numbers, but rather use the group's name. + with a GID of 1 be present. The GID of 5 is widely used for + tty group, and the number 5 is + also used in systemd + /etc/fstab for the + devpts filesystem. + All other group names and GIDs can be chosen freely by the system + administrator since well-written programs do not depend on GID numbers, + but rather use the group's name. @y 作成するグループは何かの標準に基づいたものではありません。 @@ -279,12 +105,36 @@ Linux Standard Base ( 参照) では root グループのグループID (GID) は 0、bin グループの GID は 1 を定めているにすぎません。 + GID 5 は tty グループに対して広く用いられています。 + また数値 5 は devpts ファイルシステムに対して systemd + /etc/fstab においても用いられています。 他のグループとその GID はシステム管理者が自由に取り決めることができます。 というのも通常のプログラムであれば GID の値に依存することはなく、あくまでグループ名を用いてプログラミングされているからです。 @z @x + The ID 65534 is used by the kernel for NFS and separate user + namespaces for unmapped users and groups (those exist on the NFS server + or the parent user namespace, but do not exist on the local + machine or in the separate namespace). We assign + nobody and + nogroup for it to avoid an + unnamed ID. But other distros may treat this ID differently, so any + portable program should not depend on this assignment. +@y + + ID 65534 は NFS のカーネルが利用し、マップされていないユーザーやグループに対するユーザー名前空間を切り分けます + (これは NFS サーバー上や親のユーザー空間に存在しますが、ローカルマシンや分離された名前空間には存在しません)。 + 未割り当ての ID を避けるために、この ID を nobody と nogroup に用いることにします。 + 他のディストリビューションにおいては、この ID を異なる用い方をしている場合があるため、移植性を考慮するプログラムでは、ここでの割り当てに依存しないようにしてください。 + +@z + +@x Some tests in need a regular user. We add this user here and delete this account at the end of that chapter. diff --git a/src/chapter08/coreutils.ch b/src/chapter08/coreutils.ch index d4aa96ab..84d3e2d1 100644 --- a/src/chapter08/coreutils.ch +++ b/src/chapter08/coreutils.ch @@ -55,14 +55,6 @@ @z @x -Fix a problem with autoconf-2.70 in an included gnulib .m4 file: -@y - -autoconf-2.70 に含まれている gnulib .m4 ファイルの問題を修正します。 - -@z - -@x Now prepare Coreutils for compilation: @y &PreparePackage1;Coreutils&PreparePackage2; diff --git a/src/chapter08/gcc.ch b/src/chapter08/gcc.ch index 2d22f2a6..75f02903 100644 --- a/src/chapter08/gcc.ch +++ b/src/chapter08/gcc.ch @@ -168,41 +168,13 @@ @z @x - Eight tests related to analyzer are known to fail. + In g++, four tests related to PR100400 are known to be reported + as both XPASS and FAIL. It's because the test file for this known issue + is not well written. @y - アナライザーに関するテストが 8 つ失敗します。 - -@z - -@x - One test named asan_test.C is known to - fail. -@y - - asan_test.C というテストが 1 つ失敗します。 - -@z - -@x - In libstdc++, one test named 49745.cc is - known to fail because the header dependencies in glibc have - changed. -@y - - libstdc++ において 49745.cc というテストが 1 つ失敗します。 - これは glibc 内ヘッダーの依存関係が変更されているからです。 - -@z - -@x - In libstdc++, one numpunct test and six tests related to get_time are - known to fail. These are all because the locale definitions in glibc have - changed but libstdc++ does not currently support those changes. -@y - - libstdc++ においては、numpunct のテスト 1 つと get_time に関連するテストが 6 つ失敗します。 - この理由は、glibc におけるロケール定義が変更されているからであり、libstdc++ はその変更に対応していないためです。 + g++ においては PR100400 に関連するテスト 4 つが XPASS および FAIL として出力されます。 + この問題はテストファイルが適切に記述されていないために発生します。 @z @@ -234,11 +206,10 @@ @z @x - Install the package and remove an unneeded directory: + Install the package: @y &InstallThePackage; - 不要なディレクトリは削除します。 @z diff --git a/src/chapter08/procps.ch b/src/chapter08/procps.ch index 0695c94e..1c3c197b 100644 --- a/src/chapter08/procps.ch +++ b/src/chapter08/procps.ch @@ -51,19 +51,6 @@ &CompileThePackage; @z -%@x -% The test suite needs some custom modifications for LFS. -% Remove a test that fails when scripting does not use a tty device and -% fix two others. -% To run the test suite, run the following commands: -%@y -% -% LFS においてテストスイートを実行するには多少の修正が必要です。 -% tty デバイスを利用しないスクリプトが1つ失敗するため、これを除外することにし、その他にも 2 つのテストを修正します。 -% テストスイートを実行するために以下のコマンドを実行します。 -% -%@z - @x To run the test suite, run: @y @@ -73,12 +60,24 @@ @z @x - Five tests related to pkill are known to fail due to a problem - with tests that were not updated. + + One test named free with commit + may fail if some applications with a custom memory allocator (for + example, JVM and Web browsers) are running on the host distro. @y + - pkill に関連するテストが 5 つ失敗します。 - これはテストが更新されていないために発生します。 + ホストディストリビューション上において、特定のアプリケーション(たとえば JVM や ウェブブラウザー)が独自のメモリ割り当てを行っている場合に、free with commit という名前のテストが失敗します。 @z diff --git a/src/chapter08/util-linux.ch b/src/chapter08/util-linux.ch index 0018d60d..f0b0467a 100644 --- a/src/chapter08/util-linux.ch +++ b/src/chapter08/util-linux.ch @@ -75,19 +75,6 @@ @z @x - There is one test that fails in the chroot environment and - causes the tests to hang forever. The problem does not occur outside - of the chroot environment. - To work around the problem, delete the test: -@y - - chroot 環境内においては、テストが 1 つ失敗して、テストをハングさせてしまいます。 - この問題は chroot 環境から抜け出れば発生しません。 - これを回避するため、そのテストは削除します。 - -@z - -@x The hardlink tests will fail if the host's kernel does not have the option CONFIG_CRYPTO_USER_API_HASH set. @y diff --git a/src/chapter09/introduction.ch b/src/chapter09/introduction.ch index 99c1b090..ed85a59d 100644 --- a/src/chapter09/introduction.ch +++ b/src/chapter09/introduction.ch @@ -67,18 +67,19 @@ @x The init program is controlled by the /etc/inittab file and is organized into run levels that - can be run by the user: + can be run by the user. In LFS, they are used as follows: @y init プログラムは /etc/inittab ファイルにより制御されます。 そしてユーザーが設定可能なランレベルを設定します。 + LFS においては以下のものが利用されます。 @z @x 0 — halt 1 — Single user mode -2 — Multiuser, without networking +2 — User definable 3 — Full multiuser mode 4 — User definable 5 — Full multiuser mode with display manager @@ -86,7 +87,7 @@ @y 0 — 停止 (halt) 1 — シングルユーザーモード -2 — マルチユーザー、ネットワークなし +2 — ユーザー定義 3 — フルマルチユーザーモード 4 — ユーザー定義 5 — フルマルチユーザーモード、ディスプレイマネージャーあり diff --git a/src/chapter09/usage.ch b/src/chapter09/usage.ch index a5e719c5..008e2ff9 100644 --- a/src/chapter09/usage.ch +++ b/src/chapter09/usage.ch @@ -55,7 +55,7 @@ generally not used. See init(8) for more details), and each one of those corresponds to the actions the computer is supposed to perform when it starts up. The default run-level is 3. Here are the - descriptions of the different run-levels as they are implemented: + descriptions of the different run-levels as they are implemented in LFS: @y SysVinit (これ以降はinitと表現します) はランレベルという仕組みにより動作します。 @@ -63,7 +63,7 @@ (実際にはランレベルはそれ以上あるのですが、特殊な場合であって普通は利用されません。 詳しくは init(8) を参照してください。) 各レベルは、コンピューターの起動時における処理動作に対応づいており、デフォルトのランレベルは 3 となっています。 - ランレベルの詳細を以下に説明します。 + LFS において実装されるランレベルの詳細を以下に説明します。 @z diff --git a/src/chapter10/kernel.ch b/src/chapter10/kernel.ch index 589dd969..6a51b3e1 100644 --- a/src/chapter10/kernel.ch +++ b/src/chapter10/kernel.ch @@ -188,6 +188,16 @@ 上の設定項目の説明 @z +@x Compile the kernel with warnings as errors + This may cause building failure if the compiler and/or + configuration are different from those of the kernel + developers. +@y + + これを設定すると、カーネル開発者が採用するコンパイラーや設定と異なる場合に、カーネルビルドエラーとなる場合があります。 + +@z + @x Enable kernel headers through /sys/kernel/kheaders.tar.xz This will require cpio building the kernel. cpio is not installed by LFS. diff --git a/src/general.ch b/src/general.ch index 43245013..2e28cf4f 100644 --- a/src/general.ch +++ b/src/general.ch @@ -47,9 +47,9 @@ ]]> - - - + + + @z diff --git a/src/packages.ch b/src/packages.ch index 72ba907a..3b2cc382 100644 --- a/src/packages.ch +++ b/src/packages.ch @@ -52,9 +52,9 @@ @z @x - + @y - + @z @x diff --git a/version.ac b/version.ac index 498bd52a..a970ee3e 100644 --- a/version.ac +++ b/version.ac @@ -2,4 +2,4 @@ dnl dnl This is part of LFSbookja package. dnl dnl m4-include this file to define the current LFS version -m4_define([lfs_version], [r11.1-92]) +m4_define([lfs_version], [r11.1-117])