相关疑难解决方法(0)

如何在MacPorts gcc 4.5中调试C++ 0x程序?

我有一个简单的c ++程序,我试图调试,但gdb找不到库的目标文件(或没有调试信息可用),它似乎也找不到我的可执行文件的调试符号.

我在OSX 10.5.8上,使用macports,我用我的代码编译

g ++ - mp-4.5 -Wall -pedantic -std = c ++ 0x -g -ggdb -I/opt/local/include -L/opt/local/lib -lgsl -static-libstdc ++ MCMC-simplex.cpp -o mcmc

(只有一个文件,g ++ - mp-4.5是gcc/g ++ 4.5的macports可执行文件)

当我尝试在生成的可执行文件上运行gdb时,我收到表单的许多错误消息(在启动时)

警告:找不到对象文件"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_gcc45/work/build/i386-apple-darwin9/libgcc/trunctfdf2_s.o" - 没有可用的调试信息".. /../../gcc-4.5.0/libgcc/../gcc/config/soft-fp/trunctfdf2.c".

这对我来说表明macports在构建过程中有一个bug(似乎gdb正在寻找临时构建目录中的目标文件).

我应该补充一点,当我尝试在gdb(Apple提供的那个)中查看我的程序列表时,它会尝试查找一个随机.s文件/var/tmp,这对我来说听起来像一个汇编程序文件.这就是为什么我说它似乎无法找到我的程序的调试符号.

当我尝试MacPorts gdb 7.1时,我明白了

警告:`/var/folders/Xa/XaqHO9PeEC8K-Nrd0L9xWk+++TM/-Tmp-//cc2IvFto.o':无法打开读取符号:没有这样的文件或目录.(没有找到调试符号)......完成了.

并且没有Apple的gdb发出的许多错误消息(尽管最终结果是相同的).

有没有人遇到过这个问题,想出了解决方案?

gcc gdb macports debug-symbols c++11

8
推荐指数
2
解决办法
3836
查看次数

标签 统计

c++11 ×1

debug-symbols ×1

gcc ×1

gdb ×1

macports ×1