人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Linuxのクロスコンパイルについて教えて下さい。

arm CPU用にgdbをクロスコンパイルしようとし
gdb6.8をダウンロードして
./configure --target=arm-linux --build=i686-pc-linux-gnu --host=arm-linux
make
とした所、以下のエラーがでました。


configure: error: no termcap library found


以下の方法でtermcapを入れてみても同じエラーになり困っています。
何か分からないでしょうか。
エラーの詳細は http://d.hatena.ne.jp/garyo/20081121/p1 にあります

#wget http://ftp.yz.yamagata-u.ac.jp/pub/GNU/termcap/termcap-1.3.1.tar.gz
#tar -zxvf termcap-1.3.1.tar.gz
#cd termcap-1.3.1.tar.gz
#./configure
#make
#make install

●質問者: garyo
●カテゴリ:コンピュータ インターネット
✍キーワード:ARM CD CPU gdb GNU
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● longicorn
●60ポイント

zzz_1980さんがコメントで書いているように、termcapの方は./configureしているだけなのでホスト環境へインストールしているように見えます。

gdbの方で必要なのはターゲット用のtermcapです。


またライブラリのインストール先もクロス用のgccが読める場所にインストールしないといけません。

インストール先の指定は./configureに--prefixオプションを付けます。

詳しくは./configure --helpすればオプションの一覧が出てきます。

クロス環境の構築を行う場合慣れるまではデフォルトのインストール先ではなく、インストール先を指定すれば楽です。

こうすると指定ディレクトリ以下に環境が作られるので全体が見渡せます。

ただし、パスが通っていないのが欠点ですけど。


gdbserverではcore dumpは読めないとお聞きしたので、gdbをarm用にコンパイルしようとしています。

これはstubというのが関係してきます。

[このあたり]を参照してください。

これで分からなければ別に検索してください。


ところで本題から外れますが、ホストの方にtermcapがインストールされていたら既存の環境に上書きして最悪環境を壊しているかも。

blogの方をみるとRedHat系っぽいのですが、ご存知の通りRedHatはrpmで管理しているので念のために確認しておいた方がいいかと。

◎質問者からの返答

ありがとうございます。

結局cygwin上にインストールしたarm-linux-gdbだとターゲットにcoreが選択できるので、そちらでcoreファイルを読み込ませようと思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ