arm 用に gdbserver をクロスコンパイルしようとすると、イライラするエラーが発生します。このコマンドでtermcapをダウンロードしてクロスコンパイルしました
export CC="/bin/arm-mv5sft-linux-gnueabi-gcc"
export CXX="/bin/arm-mv5sft-linux-gnueabi-g++"
export AR="/bin/arm-mv5sft-linux-gnueabi-ar"
CONFOPTS+="--target=arm-linux --host=arm-linux --build=i686-pc-linux-gnu --prefix=/usr --exec-prefix=/usr --enable-static"
./configure ${CONFOPTS}
make &&
make DESTDIR=~/gdb-7.6/toInst install
エラーが表示されなかったので、このようなクロスコンパイルが成功したため、以下に示すようにアームである libtermcap.a を取得し、 ~/termcap/ にあります。
:$ file *.o
termcap.o: ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), not stripped
tparam.o: ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), not stripped
version.o: ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), not strippe
ただし、同じオプションを使用して、arm 用の gdbserver をクロスコンパイルし、クロスコンパイルされた lib を呼び出すために同じことをしようとすると、
export CC="/bin/arm-mv5sft-linux-gnueabi-gcc"
export CXX="/bin/arm-mv5sft-linux-gnueabi-g++"
export AR="/bin/arm-mv5sft-linux-gnueabi-ar"
CONFOPTS+="--target=arm-linux --host=arm-linux --build=i686-pc-linux-gnu --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --enable-static --with-termcap=~/termcap/libtermcap.a"
./configure ${CONFOPTS} $@
make &&
make DESTDIR=~/gdb-7.6/toInst install
私はこれを得る
checking for library containing waddstr... no
configure: WARNING: no enhanced curses library found; disabling TUI
checking for library containing tgetent... no
configure: error: no termcap library found
make[1]: *** [configure-gdb] Error 1
make[1]: Leaving directory `~/gdb-7.6'
make: *** [all] Error 2
ライブラリ libncurses5-dev のインストールを提案するサイトをインターネット上でいくつか見つけましたが、既にインストール済みです!
$ sudo apt-get install libncurses5-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libncurses5-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 67 not upgraded.
どうすれば gdbserver をクロスコンパイルできるかわかりません。助けてください!
前もって感謝します!!
よろしく