2009年12月3日木曜日

Mac OS X 10.6 Snow Leopard で CDT を動かしてみる

Mac OS X 10.6 Snow Leopard で Eclipse3.5 Galileo + CDT を動かそうとすると、デバッグができない。

実行構成や、デバッグ構成、環境変数(PATH)の設定、バイナリパーサーの設定等いろいろ試しても動かない。

原因は Snow Leopard に入っている gcc のバージョンにあります。

切り替えを行っていない限りバージョン4.2が参照されていると思います

確認方法は、ターミナルで

gcc -dumpversion

で確認できます。

gcc4.2 は64bitのバイナリを生成します。

実行構成のプロジェクトの検索ボタンを押すと、 CDT が自動でバイナリを認識して、一覧に表示してくれるそうだが、64bitバイナリを認識できていないようです。

Snow Leopard には gcc4.0(32bitバイナリ)も入っているので、参照されている gcc のシンボリックリンクを貼り直すことで対処します。

cd /usr/bin
sudo rm cc gcc c++ g++
sudo ln -s gcc-4.0 cc
sudo ln -s gcc-4.0 gcc
sudo ln -s c++-4.0 c++
sudo ln -s g++-4.0 g++

以上のコマンドで 4.0 を参照するようになります。

4.2 に戻したいときは以下のコマンドを実行してください。

cd /usr/bin
sudo rm cc gcc c++ g++
sudo ln -s gcc-4.2 cc
sudo ln -s gcc-4.2 gcc
sudo ln -s c++-4.2 c++
sudo ln -s g++-4.2 g++

クリーンビルドを実行し、実行構成の設定を再度行えば、CDTがバイナリを認識するはずです。

0 件のコメント:

コメントを投稿