コンテンツにスキップ

「DeveloperWiki:ツールチェーンのメンテナンス」の版間の差分

提供: ArchWiki
削除された内容 追加された内容
 
 
(同じ利用者による、間の5版が非表示)
1行目: 1行目:
[[Category:DeveloperWiki]]
[[Category:DeveloperWiki]]
[[en:DeveloperWiki:Toolchain maintenance]]
This page is intended to contain all relevant information to bootstrap the toolchain on Arch Linux,
このページは Arch Linux でツールチェーンをブートストラップすることに関する全ての情報を含むことを意図していて、
including any issues that are expected to be found, as well as providing documentation on the build order
予期されるあらゆる問題や、重要なツールチェーンパッケージの新しいバージョンがリリースされたときのビルドの順番の
when new versions of important toolchain packages are released.
ドキュメントを提供することを含みます。


ツールチェーンのビルド順は以下です:
The toolchain build order is as follows:


linux-api-headers -> glibc -> binutils -> gcc -> binutils -> glibc
linux-api-headers -> glibc -> binutils -> gcc -> binutils -> glibc
10行目: 11行目:
==Linux Api Headers==
==Linux Api Headers==


Provided by {{Pkg|linux-api-headers}}.
{{Pkg|linux-api-headers}} により提供されます。


これはツールチェーンの一番目のステップです。
It is the first step on the toolchain.


==GNU C Library==
==GNU C Library==


Provided by {{Pkg|glibc}}.
{{Pkg|glibc}} により提供されます。


ツールチェーンの二番目のステップで、新しい gcc がリビルドされた後にリビルドする必要もあります。
Second step of the toolchain, also, it needs to be rebuilt after a new gcc rebuild.


so のバージョンの変更に関わらず、新しい glibc の後にリビルドを必要とする、{{Pkg|valgrind}} のようなパッケージもあります。
There are some packages that require a rebuild after a new glibc, regardless of a so bump, such as {{Pkg|valgrind}}.


==GNU Binutils==
==GNU Binutils==


Provided by {{Pkg|binutils}}.
{{Pkg|binutils}} により提供されます。


ツールチェーンの三番目のステップで、新しい glibc のリリースと新しい gcc のリリースの後の2回リビルドする必要があります。
Third step of the toolchain, also it needs to be rebuilt twice on new glibc releases and also after a new gcc release.


==GNU Compiler Collection==
==GNU Compiler Collection==


Provided by {{Pkg|gcc}}.
{{Pkg|gcc}} により提供されます。


ツールチェーンの最後の (または初めの) ステップで、全体のビルドに必要不可欠です。gcc のアップデートは binutils と glibc、
Last (or first) step of the toolchain, and vital to building its entirety. Its update triggers a binutils and glibc rebuild,
as well as other packages, like {{Pkg|linux}} itself and {{Pkg|libtool}}
{{Pkg|linux}} 自身や {{Pkg|libtool}} といった他のパッケージのリビルドを必要とします。


カーネルは gcc の設定フラグを詳細に確認します。つまり、パッケージリリースの間で何かフラグが変わった場合、gcc のバージョンが同じでも、
The kernel has a strict check on gcc configure flags. So, if any flags are changed between package releases, even if it is the
'''カーネルのリビルドが必要です'''。
same gcc version, a '''kernel rebuild is required'''.

2020年6月8日 (月) 10:31時点における最新版

このページは Arch Linux でツールチェーンをブートストラップすることに関する全ての情報を含むことを意図していて、 予期されるあらゆる問題や、重要なツールチェーンパッケージの新しいバージョンがリリースされたときのビルドの順番の ドキュメントを提供することを含みます。

ツールチェーンのビルド順は以下です:

linux-api-headers -> glibc -> binutils -> gcc -> binutils -> glibc

Linux Api Headers

linux-api-headers により提供されます。

これはツールチェーンの一番目のステップです。

GNU C Library

glibc により提供されます。

ツールチェーンの二番目のステップで、新しい gcc がリビルドされた後にリビルドする必要もあります。

so のバージョンの変更に関わらず、新しい glibc の後にリビルドを必要とする、valgrind のようなパッケージもあります。

GNU Binutils

binutils により提供されます。

ツールチェーンの三番目のステップで、新しい glibc のリリースと新しい gcc のリリースの後の2回リビルドする必要があります。

GNU Compiler Collection

gcc により提供されます。

ツールチェーンの最後の (または初めの) ステップで、全体のビルドに必要不可欠です。gcc のアップデートは binutils と glibc、 linux 自身や libtool といった他のパッケージのリビルドを必要とします。

カーネルは gcc の設定フラグを詳細に確認します。つまり、パッケージリリースの間で何かフラグが変わった場合、gcc のバージョンが同じでも、 カーネルのリビルドが必要です