我在Mac Pro X Mac OS X 10.6.6上使用Xcode 3.2.3从the growl-development repository构建版本5fd480ef577f的GrowlTunes。
使用原始结帐的干净版本,这就是我得到的:
% gdb build/Debug/GrowlTunes.app/Contents/MacOS/GrowlTunes
GNU gdb 6.3.50-20050815 (Apple version gdb-1469) (Wed May 5 04:41:34 UTC 2010)
[blah blah blah]
This GDB was configured as "--host=x86_64-apple-darwin --target=powerpc-apple-darwin"...Reading symbols for shared libraries ......... done
(gdb) run
Starting program: /Volumes/RAM Disk/growl-development/Extras/GrowlTunes/build/Debug/GrowlTunes.app/Contents/MacOS/GrowlTunes
Don't know how to run. Try "help target".
当我在Xcode中尝试时,它显然会进行一些失败的内部测试,因为它甚至没有将GDB列为选项。由于Cocoa应用程序中没有其他调试器(在此版本的Xcode中),与目标Info窗口中的调试相关的弹出菜单是空的,并且尝试运行应用程序什么都不做 - Run按钮切换回为立即运行按钮。
目标是为32位PowerPC和64位Intel构建的:
% file build/Debug/GrowlTunes.app/Contents/MacOS/GrowlTunes
build/Debug/GrowlTunes.app/Contents/MacOS/GrowlTunes: Mach-O universal binary with 2 architectures
build/Debug/GrowlTunes.app/Contents/MacOS/GrowlTunes (for architecture ppc7400): Mach-O executable ppc
build/Debug/GrowlTunes.app/Contents/MacOS/GrowlTunes (for architecture x86_64): Mach-O 64-bit executable x86_64
我可以直接从终端或Finder运行它,但这对我的逐步调试没有帮助。
这不是交叉编译方案;我的意思是运行64位英特尔架构,这是我机器的本机架构,而不是PowerPC架构。
我猜这是项目中某处的构建错误配置,但我不知道是什么或在哪里。有什么建议吗?
答案 0 :(得分:2)
来自我的联系人的解决方法:
gdb -arch x86_64 build/Debug/GrowlTunes.app/Contents/MacOS/GrowlTunes
我仍然感谢能够在Xcode中运行/调试应用程序的解决方案。
答案 1 :(得分:1)
在相关构建设置中切换体系结构的顺序解决了gdb和Xcode中的问题。这是一个蹩脚的解决方案,我仍然欢迎一个更好的解决方案,但至少它是有效的。
答案 2 :(得分:1)
在gdb提示符下,尝试'set arch x86_64'或'set arch i386:x86-64'(当然没有引号;我是gdb的新手,我正在寻找其他问题的解决方案)