私のルーターでMIPSEL用にクロスコンパイルしようとしています。アセンブリで作業しているものがありましたが、現在は基本的なCコードをコンパイルしようとしています。どのlibc.soがリンクされるかを変更しますか?
現在、単純なhello worldのcコードがあり、アセンブリのために動作するmipsel-linux-gnu-gccコンパイラを使用しています。
コンパイラのコマンドは:
mipsel-linux-gnu-gcc -L/home/uname/devel/extr/squashfs-root/lib -l:libc.so.0 -mips32 -Wl,--build-id=none -Wl,--dynamic-linker=/lib/ld-uClibc.so.0 ma.c
libc.so.0は、ルータのファームウェアから抽出されます。
プログラムのコンパイル、しかしreadelfがで、問題は、それがファームウェアからbusyboxのバイナリを引いて、その上にreadelfが実行に対し、libc.so.6と
0x00000001 (NEEDED) Shared library: [libc.so.6]
にリンクということです
0x00000001 (NEEDED) Shared library: [libc.so.0]
libc.so.0とリンクするにはどうしたらいいですか?