0

インターンシップ中に厄介な問題に遭遇しました。私の仕事は C++ で VTK を使ってコーディングすることで、OSX 10.8.3 で作業しました。


プログラムをデバッグするときは、gdb を実行し、"file" 命令を使用してプログラムをロードし、"list" を使用してソース コードを表示し、行番号でブレークポイントを作成しました。ここで問題が発生します。この気紛れな gdb は、ソース コードに含めていなかった VTK ヘッダー ファイルのソース コードを示していました。


私のプログラムの名前が読み取られ、ブレークポイントを設定するために使用しようとしましgdb readbreak read:15が、gdb は " no source file named read" と表示されました。ubuntu 12.04でgdbがうまく機能し、file readLinuxのgdbで使用すると表示されることに気付きました

Reading symbols from /Users/apple/Dev/VTKRead/bin/bin/read...done.

しかし、私のOSX 10.8.3の気紛れなgdbでは表示されました

Reading symbols for shared libraries ......... done
Reading symbols from /Users/apple/Dev/VTKRead/bin/bin/read...done.

それが理由だと思います.macportにgcc4.8をインストールして問題を解決するためにコンパイラを変更しようとしましたが、cmakeはAppleのgccしか受け付けないようです。

4

2 に答える 2

1

しかし、gdbはばかげている「読み取りという名前のソースファイルはありません」と表示しました!

これはまったく難しいことではありません。おそらくread. あなたが持っているものは、おそらくread.cc、またはと呼ばれているread.cppので、試してみてくださいbreak read.cc:15

于 2013-05-17T22:19:19.893 に答える
0

これは私の間違いです。ccmake でビルド タグを「debug」に設定しなかったため、コンパイラは情報をファイルに書き込みませんでした。

于 2013-07-16T13:48:18.197 に答える