ARM ベースのシングル ボード コンピューター用にクロス コンパイルしようとしています。ボード用に設計された uClibc ツールチェーンを使用しています。私は ROM サイズに関して非常にスペースが限られているので、バイナリ サイズを念頭に置いてコンパイルしようとしています。(メモリフットプリントは問題ではありません)
現在、次のようなコマンドを使用してコンパイルしています。
arm-uclibc-3.4.6/bin/arm-linux-gcc -Wall -mcpu=arm9 mongoose.c main.c -o mongoose -ldl - pthread -W -std=c99 -pedantic -Wl,--rpath,/slib -Wl,-dynamic-linker,/slib/ld-uClibc.so.0 -static -g -Os
現在、埋め込みターゲットに保存されていないいくつかのライブラリを静的にリンクする必要があります。ただし、ボード上には、プログラムが動的にリンクできる共有ライブラリ ld-uClibc.so.0 が 1 つあります。
私が理解しようとしているのは、ld-uClibc.so.0 を動的にリンクし、必要な残りのライブラリを静的にリンクする方法です。