我遇到的问题是,即使安装了gdb之后Eclipse仍然会发出错误消息'错误命令--gdb版本'每当我尝试编译我的代码。 我完全按照本指南:Eclipse GDB MacOSX Mavericks,但它没有解决它。任何想法还有什么可能是错的?
答案 0 :(得分:0)
您必须将Eclipse中的GDB路径从gdb
更改为/usr/local/bin/gdb
或类似。换句话说,指定完整路径。
在终端中运行which gdb
应该告诉你什么是正确的路径。
您可以在Eclipse中全局设置此属性(Preferences - > C / C ++ - > Debug - > GDB)或每个项目。我建议全局更改它,但要注意在更改值之前创建的运行配置仍将具有旧值,需要手动更新。打开运行(调试)配置并选中“调试”选项卡。
答案 1 :(得分:0)
虽然Marco83的答案肯定有效,但我想要的东西对于我的学生来说是开箱即用的,只有一些人使用的是Mac OS X(其他人使用的是使用MinGW和Linux计算机的Windows计算机) )。
我认为Eclipse可能在找到gcc和g ++的同一目录中寻找gdb,所以我去了/ opt / local / bin,其中' port'把ggdb和软链接添加到/ usr / bin / gcc和/ usr / bin / g ++
同时,我添加了一个从gdb到ggdb的软链接
到目前为止一切顺利,但我的El Capitan上的默认PATH环境变量/ usr / bin在/ opt / local / bin之前出现
我在终端窗口中更改了PATH中的顺序,并从终端窗口启动了eclipse,类似于......
... /应用/ Eclipse.app /内容/的MacOS /蚀
似乎证明了我的判断是正确的。 Eclipse现在发现gdb没有在程序内部进行任何修改。这让我可以轻松地使用所需的PATH命令启动eclipse。
我编辑了... / Applications / Eclipse.app / Contents / Info.plist并添加了"环境变量"财产清单儿童和那个"路径"完全符合我想要的完整路径的财产。
然后我使用终端中的/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister程序来强制更新LaunchService数据库(正如我在StackExchange上学到的那样),或者你可以重启或类似那。
这似乎适用于El Capitan。对此的任何改进都将受到欢迎。