LinuxホストにEclipse CDT、CodeSourcery G ++ツールチェーンをインストールしました。私はCode Sourcery Eclipse IDEを使用しています。フリースケールのサイトからLinux Target Image Builderを使用してMCF5485ボードにLinuxカーネルをインストールしました。Eclipse CDTを使用したMCF5485EVBボードのリモートデバッグについて
Sourcery Eclipse IDEを使用してLinuxホストに「helloworld」プロジェクトを作成しました。 Sourceryフォルダの実行可能ファイル(gdbserver、catchsgevなど)をルートファイルシステムのボードにコピーしました。
ボード上でgdbserverを実行し、LinuxマシンからTCPを使用してデバッグします。 Sourcery Eclipse IDEでは、ボード上のルートにgdbserver(/root/bin
)がインストールされているため、ターゲットのsysrootを/
と指定しました。
Eclipseでデバッグ設定でIPアドレスを指定しましたが、残りはデフォルトです。 デバッグ設定の[共有ライブラリ]タブで[Translate sysroot pathnames]オプションを選択しました
gdbsrverをオンボード(gdbserver IP:port /pathname/to/executable
)から起動し、Linuxホストでデバッグ設定を開始します。ブレークポイントのためにmain()
で停止します。再開を押すと、次のエラーが表示されます。
warning: .dynamic section for "C:\\Program Files\\CodeSourcery\\Sourcery G++\\m68k-linux-gnu\\libc/lib/libc.so.6" is not at the expected address (wrong library or version mismatch?)
Stopped due to shared library event
Stopped due to shared library event
Stopped due to shared library event
次のように私のプログラムは次のとおりです。
include <stdio.h>
int main(void)
{
int i=0;
printf("Hello = %d",i);
return 0;
}
私はSYSROOTを設定する必要があるいくつかのフォーラムで読んしかし、私はまた、私は私がボード上のルートファイルシステムにSYSROOTをインストールしている場合は、その読み何もする必要はありません。