私はuclibcを使用する組み込みシステムで作業するために必要なバイナリを持っています。このバイナリはglibcに対してコンパイルされていますが、これはうまくいきますか?glibcコンパイル済みバイナリにuclibcリンカを使用していますか?
実行しようとするとバイナリが存在しないというエラーが表示されるので、不足しているライブラリを確認しました。
libc6: /lib/x86_64-linux-gnu/libdl.so.2
libc6: /lib/x86_64-linux-gnu/librt.so.1
libc6: /lib/x86_64-linux-gnu/libm.so.6
libc6: /lib/x86_64-linux-gnu/libc.so.6
libc6: /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
libc6: /lib/x86_64-linux-gnu/libnsl.so.1
私は私のシステムで持っているバージョンにこれらのすべてが、1つのシンボリックリンクすることができました(古いバージョンをが、バイナリは、これらの新しいバージョンを必要はありませんように私はそれが動作するように期待する):
libc6: /lib/x86_64-linux-gnu/libdl.so.2 --------------------- ln -s /lib/libdl-0.9.33.2.so libdl.so.2
libc6: /lib/x86_64-linux-gnu/librt.so.1 --------------------- ln -s /lib/librt-0.9.33.2.so librt.so.1
libc6: /lib/x86_64-linux-gnu/libm.so.6 --------------------- ln -s /lib/libm.so.0 libm.so.6
libc6: /lib/x86_64-linux-gnu/libc.so.6 --------------------- ln -s /lib/libc.so.0 libc.so.6
libc6: /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 ----------------
libc6: /lib/x86_64-linux-gnu/libnsl.so.1 --------------------- ln -s /lib/libnsl-0.9.33.2.so libnsl.so.1
ld-linux-x86-64.so.2
(私のホストPCで指し示すものであるld-2.19.so
などの私が指すライブラリもありません)これはglibcに固有のリンカですか?私は/lib/ld64-uClibc.so.0/
//lib/ld64-uClibc-0.9.33.2.so
を持っていますが、シンボリックは効果がありません(まだNo such file or directory
を取得します)、それは正しいことでも、何とかシステムに組み込まれたld-linux-x86-64.so.2
を取得する必要がありますか?