emergencyは、chroot内で実行されない限り、クロス開発ツールチェーンが「マージするものがない」と報告します。

emergencyは、chroot内で実行されない限り、クロス開発ツールチェーンが「マージするものがない」と報告します。

私のホストのGentooインストールはstage3 tarball、systemdバージョンから起動します。私のcrossdevツールチェーンは、systemdなしで最初からコンパイルされたaarch64-unknown-linux-gnuです--stable。代わりに、Cライブラリの場合、どちらの場合もglibcが使用されます。マニュアルに警告があります(約1時間)。ここ) 一部のパッケージは、@system最初に提示されたときにビルドされない可能性があると述べていますが、私にはこのようなことはありませんでした。

ホスト(/var/db/repos/*)のすべてのオーバーライドは、ターゲットrootfs内の対応するディレクトリにバインドマウントされます。

emerge-chrootターゲット内で内部的に使用されるコマンドをコピーして貼り付けます。マニュアルから:

alias emerge-chroot='ROOT=/ CBUILD=aarch64-unknown-linux-gnu HOSTCC=-gcc emerge'

質問

aarch64-unknown-linux-gnu-emerge -avuND @worldホストシステムでこれを行うと、Emergeは「マージする項目がありません」と報告して終了します。

# aarch64-unknown-linux-gnu-emerge -avuND @world

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 8.47 s.


Total: 0 packages, Size of downloads: 0 KiB

Nothing to merge; quitting.

しかし、ツールチェーンでchrootを実行すると、インストールemerge-chroot -avuND @world予定のパッケージが90個以上であることがわかりました。主にPerlモジュールとbc

(aarch64) gentoo / # emerge-chroot -avuND @world

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 73.04 s (backtrack: 0/10).

[ebuild  N     ] dev-util/re2c-2.2::gentoo  USE="-debug -test" 0 KiB
[ebuild  N     ] dev-util/gtk-doc-am-1.33.2::gentoo  0 KiB
[ebuild  N     ] net-libs/libtirpc-1.3.4:0/3::gentoo  USE="(split-usr) -kerberos -static-libs" 0 KiB
[ebuild  N     ] net-libs/libnsl-2.0.0-r1:0/3::gentoo  USE="-static-libs" 0 KiB
[ebuild  N     ] app-portage/elt-patches-20221210::gentoo  0 KiB
[ebuild  N     ] app-arch/unzip-6.0_p27-r1::gentoo  USE="bzip2 (unicode) -natspec" 0 KiB
[ebuild  N     ] app-eselect/eselect-lib-bin-symlink-0.1.1-r1::gentoo  0 KiB
[ebuild  N     ] app-eselect/eselect-iptables-20220320::gentoo  0 KiB
[ebuild  N     ] app-eselect/eselect-pinentry-0.7.2-r1::gentoo  0 KiB
[ebuild  N     ] dev-util/meson-format-array-0::gentoo  PYTHON_TARGETS="python3_11 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/installer-0.7.0::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/gpep517-15::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] app-text/build-docbook-catalog-2.4::gentoo  0 KiB
[ebuild  N     ] dev-libs/libxslt-1.1.38::gentoo  USE="crypt -debug -examples -python -static-libs" PYTHON_TARGETS="python3_11 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] app-arch/libarchive-3.7.2:0/13::gentoo  USE="bzip2 e2fsprogs iconv lzma xattr -acl -blake2 -expat -lz4 -lzo -nettle -static-libs -verify-sig -zstd" 0 KiB
[ebuild  N     ] dev-python/flit-core-3.9.0::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] app-text/docbook-xsl-stylesheets-1.79.1-r4::gentoo  USE="-ruby" 0 KiB
[ebuild  N     ] app-crypt/rhash-1.4.4:0/1::gentoo  USE="nls ssl -debug -static-libs" 0 KiB
[ebuild  N     ] app-text/docbook-xsl-ns-stylesheets-1.79.1::gentoo  USE="-ruby" 0 KiB
[ebuild  N     ] dev-python/editables-0.5::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/pathspec-0.11.2::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] app-text/docbook-xml-dtd-4.1.2-r7:4.1.2::gentoo  0 KiB
[ebuild  N     ] app-text/docbook-xml-dtd-4.2-r3:4.2::gentoo  0 KiB
[ebuild  N     ] app-text/docbook-xml-dtd-4.5-r2:4.5::gentoo  0 KiB
[ebuild  N     ] virtual/perl-ExtUtils-MakeMaker-7.700.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-ExtUtils-CBuilder-0.280.238::gentoo  0 KiB
[ebuild  N     ] virtual/perl-File-Spec-3.880.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Scalar-List-Utils-1.630.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-ExtUtils-ParseXS-3.510.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Carp-1.540.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Exporter-5.770.0-r1::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Digest-MD5-2.580.100_rc::gentoo  0 KiB
[ebuild  N     ] dev-perl/TimeDate-2.330.0-r1::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-perl/Text-CharWidth-0.40.0-r2::gentoo  USE="-test" 0 KiB
[ebuild  N     ] virtual/perl-ExtUtils-Install-2.220.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-ExtUtils-Manifest-1.730.0-r2::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Getopt-Long-2.540.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Module-Metadata-1.0.37-r3::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Perl-OSType-1.10.0-r7::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Text-ParseWords-3.310.0-r1::gentoo  0 KiB
[ebuild  N     ] virtual/perl-podlators-5.10.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-version-0.992.900-r1::gentoo  0 KiB
[ebuild  N     ] virtual/perl-CPAN-Meta-YAML-0.18.0-r9::gentoo  0 KiB
[ebuild  N     ] virtual/perl-JSON-PP-4.160.0-r1::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Parse-CPAN-Meta-2.150.10-r7::gentoo  0 KiB
[ebuild  N     ] virtual/perl-IO-1.520.0::gentoo  0 KiB
[ebuild  N     ] virtual/perl-MIME-Base64-3.160.100_rc::gentoo  0 KiB
[ebuild  N     ] virtual/perl-Digest-SHA-6.40.0::gentoo  0 KiB
[ebuild  N     ] sys-apps/texinfo-7.0.3::gentoo  USE="nls standalone -static" 0 KiB
[ebuild  N     ] dev-perl/Locale-gettext-1.70.0-r1::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-perl/Digest-HMAC-1.40.0::gentoo  0 KiB
[ebuild  N     ] dev-perl/Pod-Parser-1.660.0::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-perl/TermReadKey-2.380.0-r1::gentoo  USE="-examples -test" 0 KiB
[ebuild  N     ] dev-perl/Text-WrapI18N-0.60.0-r2::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-perl/YAML-Tiny-1.740.0::gentoo  USE="-minimal -test" 0 KiB
[ebuild  N     ] dev-perl/MIME-Charset-1.13.1::gentoo  USE="-test" L10N="-ja -zh" 0 KiB
[ebuild  N     ] virtual/perl-CPAN-Meta-2.150.10-r7::gentoo  0 KiB
[ebuild  N     ] dev-perl/Mozilla-CA-20999999-r1::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-perl/Net-SSLeay-1.920.0-r1::gentoo  USE="-examples -minimal -test" 0 KiB
[ebuild  N     ] dev-perl/Module-Build-0.423.400::gentoo  USE="-test" 0 KiB
[ebuild  N     ] sys-apps/help2man-1.49.3::gentoo  USE="nls" 0 KiB
[ebuild  N     ] dev-perl/Authen-SASL-2.170.0::gentoo  USE="-kerberos -test" 0 KiB
[ebuild  N     ] dev-perl/Unicode-LineBreak-2019.1.0::gentoo  0 KiB
[ebuild  N     ] dev-perl/IO-Socket-SSL-2.83.0::gentoo  USE="-examples -idn -test" 0 KiB
[ebuild  N     ] virtual/perl-libnet-3.150.0::gentoo  USE="ssl" 0 KiB
[ebuild  N     ] dev-perl/Error-0.170.290::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-perl/SGMLSpm-1.1-r2::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-perl/ExtUtils-CChecker-0.110.0::gentoo  USE="-test" 0 KiB
[ebuild  NS    ] dev-lang/python-3.12.0:3.12::gentoo [3.11.6:3.11::gentoo] USE="ensurepip gdbm ncurses readline sqlite ssl -bluetooth -build -debug -examples -libedit -lto -pgo -test -tk -valgrind -verify-sig" 0 KiB
[ebuild  N     ] dev-perl/MailTools-2.210.0::gentoo  USE="-examples -test" 0 KiB
[ebuild  N     ] dev-perl/XS-Parse-Keyword-0.380.0::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-util/ninja-1.11.1-r2::gentoo  USE="-doc -emacs -test" 0 KiB
[ebuild  N     ] dev-lang/tcl-8.6.13-r1:0/8.6::gentoo  USE="threads -debug" 0 KiB
[ebuild  N     ] dev-libs/libuv-1.46.0:0/1::gentoo  0 KiB
[ebuild  N     ] app-text/opensp-1.5.2-r10::gentoo  USE="nls -doc -static-libs -test" 0 KiB
[ebuild  N     ] dev-perl/Syntax-Keyword-Try-0.280.0::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-vcs/git-2.42.0::gentoo  USE="blksha1 curl gpg iconv nls pcre perl safe-directory webdav -cgi -cvs -doc -highlight -keyring (-mediawiki) -perforce (-selinux) -subversion -test -tk -xinetd" PYTHON_SINGLE_TARGET="python3_11 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] app-text/po4a-0.69::gentoo  USE="-test" 0 KiB
[ebuild  N     ] dev-util/meson-1.2.2-r1::gentoo  USE="(-test)" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/calver-2022.06.26::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/cython-3.0.2-r1::gentoo  USE="-debug -doc -test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/markupsafe-2.1.3::gentoo  USE="-debug -test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/pygments-2.16.1::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/jinja-3.1.2::gentoo  USE="-doc -examples -test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/pluggy-1.3.0::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/trove-classifiers-2023.9.19::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-libs/jsoncpp-1.9.5:0/25::gentoo  USE="-doc -test" 0 KiB
[ebuild  N     ] dev-python/lxml-4.9.3-r2::gentoo  USE="threads -debug -doc -examples -test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/docutils-0.20.1-r1::gentoo  PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-python/hatchling-1.18.0::gentoo  USE="-test" PYTHON_TARGETS="python3_11 -pypy3 -python3_10 -python3_12" 0 KiB
[ebuild  N     ] dev-util/cmake-3.27.7::gentoo  USE="ncurses (-dap) -doc -emacs -gui (-qt6) -test -verify-sig" 0 KiB
[ebuild  N     ] sys-devel/bc-1.07.1-r6::gentoo  USE="readline -libedit -static" 0 KiB
[ebuild  N     ] app-alternatives/bc-0::gentoo  USE="gnu -gh" 0 KiB

Total: 93 packages (92 new, 1 in new slot), Size of downloads: 0 KiB

Would you like to merge these packages? [Yes/No]

リストからパッケージの1つを明示的に読み込むために、ツールチェーンのホスト部分を使用してみました。成功しました。

# aarch64-unknown-linux-gnu-emerge -avuND dev-util/re2c

その後、ツールチェーンrootfsでルートを指定して実行しましたが、emerge-chroot -avuND @worldもはやdev-util/re2c存在しなくなり、合計92個のパッケージが保留中です。

 # emerge-chroot -avuND @world

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 72.06 s (backtrack: 0/10).

[ebuild  N     ] dev-util/gtk-doc-am-1.33.2::gentoo  0 KiB
[ebuild  N     ] net-libs/libtirpc-1.3.4:0/3::gentoo  USE="(split-usr) -kerberos -static-libs" 0 KiB
[ebuild  N     ] net-libs/libnsl-2.0.0-r1:0/3::gentoo  USE="-static-libs" 0 KiB
...
Total: 92 packages (91 new, 1 in new slot), Size of downloads: 0 KiB

Would you like to merge these packages? [Yes/No]

クロスコンパイラを使ってできるだけビルドしたいです。明らかに、上記のリストのパッケージの少なくとも一部はクロスコンパイラを使用して構築できます。

aarch64-unknown-linux-gnu-emerge同期する方法とその間にあるもののアイデアはありますかemerge-chrootemerge-chroot出力からgrepおよびsedパッケージ名を取得してホストに提供できることを知っていますがaarch64-unknown-linux-gnu-emerge、そうすることが正しい方法ではないことがわかります。

関連情報