当然、x86-64デバイスを作成しようとしたときにglibc 2.23をコンパイルしたいと思いました。できました
mkdir build
cd build
../configure --enable-kernel=2.6.32
--with-headers=/path/to/appliance/kernel/headers
--prefix=/usr
そして
make -j4 install_root=/path/to/appliance/root && make install install_root=/path/to/appliance/root
結果は100MBを超え、Debain libcパッケージを見て、どのように比較するとほんの数メガバイトであるかを確認しました。ほとんどのスペースは、私にはまったく必要ないロケールと文字セットから来ているようです。
切ってもいいですか?
答え1
あなたの質問に対する正確な答えではありませんが、サイズが重要なので、musl
代わりにlibcを使用することをお勧めしますglibc
。これにより、すべてのバイナリがそのlibcに静的または動的にリンクされ、より小さくなります。
http://elinux.org/images/e/eb/Transitioning_From_uclibc_to_musl_for_Embedded_Development.pdf
答え2
不要なロケールをビルドするのではなく、不要な静的ライブラリを削除し、共有ライブラリからデバッグシンボルを削除します。そうすれば、サイズが素敵に縮小します。