以前の日記Busybox+uClibcで、uClibcのリンクがうまく行かない件で、ようやく正常にリンクできるようになりました。
やり方は、かなり強引です。って言うかまだまだ調査が必要ですが……(-_-;)
まずは、specsファイルの位置を調べます。
# powerpc-linux-gnu-gcc -v Reading specs from /usr/lib/gcc/powerpc-linux-gnu/3.4.6/specs Configured with: ../src/configure -v --enable-languages=c,c++ --prefix=/usr --libexecdir=/usr/lib --with-gxx-include-dir=/usr/powerpc-linux-gnu/include/c++/3.4 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --program-suffix=-3.4 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --disable-softfloat --enable-targets=powerpc-linux,powerpc64-linux --with-cpu=default32 --disable-softfloat --program-prefix=powerpc-linux-gnu- --includedir=/usr/powerpc-linux-gnu/include --build=i486-linux-gnu --host=i486-linux-gnu --target=powerpc-linux-gnu Thread model: posix gcc version 3.4.6 (Debian 3.4.6-5)
で、元のspecsファイルを退避させ
# cp /usr/lib/gcc/powerpc-linux-gnu/3.4.6/specs /usr/lib/gcc/powerpc-linux-gnu/3.4.6/specs.org
specsファイルの"ld.so.1"を"ld-uClibc.so.0"に書き換えます。
で、下記のフラグを設定してコンパイルすればOK!
export CFLAGS='-I /usr/powerpc-linux-uclibc/usr/include -nostdlib -L /usr/powerpc-linux-uclibc/lib -L /usr/powerpc-linux-uclibc/usr/lib' export LDFLAGS='-nostdlib -L /usr/powerpc-linux-uclibc/lib -lc'
まぁ、でもターゲットで動かなかったですけどね……(T_T)
(コンパイラかライブラリの問題ですね~たぶん……)
どうせspecsファイルを書き換えるなら、上記のフラグをどこかに書けばいいんだろうけど何処なんでしょうか(?_?)
まだまだ修行が足りません。(>_<)