よりコンパクトなglibcをコンパイルする方法は?

よりコンパクトなglibcをコンパイルする方法は?

当然、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に静的または動的にリンクされ、より小さくなります。

https://www.musl-libc.org/

http://elinux.org/images/e/eb/Transitioning_From_uclibc_to_musl_for_Embedded_Development.pdf

http://wiki.musl-libc.org/wiki/Projects_using_musl

答え2

不要なロケールをビルドするのではなく、不要な静的ライブラリを削除し、共有ライブラリからデバッグシンボルを削除します。そうすれば、サイズが素敵に縮小します。

関連情報