busyboxとDNSルックアップの使用にはいくつかの問題があります。私が見つけた主張するこれはglibcの問題です。私はGentooにいます。システムでglibcを置き換えずにuClibc用のbusyboxをコンパイルしたいと思います。
言う
ホストシステム
Gentooシステム、glibc用に作られたパッケージ。私はglibcに対して静的にリンクされたバイナリとしてbusyboxをインストールしました。編集する:アーキテクチャはx86_64であり、multilibはありません。
ターゲット
ホストシステムのlibcを壊さずにbusyboxをuClibcに接続したいと思います。私はこれを達成するために、EmergeのようなGentooの基本的なツールを使用することを好みます。しかし、いくつかの手動スクリプトに関連する提案も歓迎されています。ターゲットホストのアーキテクチャは同じです。
試験を終えた
- オプションを使用してください
emerge --root=/..
。しかし、接続はまだglibcに反対しているようです。/
- 使用Gentooプレフィックスプロジェクトしかし、プレフィックスのインストールパスに別のglibcベースの3つのステップがありました。
- 私は持っています確立されたオプション
gcc -Xlinker -rpath=/default/path/to/libraries -Xlinker -I/default/path/to/libraries/ld.so program.c
。しかし、Gentooでどのように使用するのかわかりません。make.conf
またはbusyboxのような一般的なビルドからmake
。
追加の試み:
USE="-static
動的にリンクされたバージョンを構築するには、busyboxを設定してください。それを見つけるには、ライブラリの依存関係を使用してくださいldd /bin/busybox
。 Stanglyはライブラリldd
を返しませんnss*.so
。だから手動で画像をコピーしました。それでもエラーnslookup
がping example.com
発生します。- 以下からuClibcステージをダウンロードしてください。https://www.gentoo.org/downloads/。 chrootでbusyboxバイナリを設定して再構築します。これはうまくいきますが、+/- 1MBビジボックスバイナリを構築するのは確かに過剰です(ステージ3の場合は144MBと比較して)。