我复制了一个正在工作的、正在建设的、完全超级的项目,开始着手一个相关的项目。
新项目生成,但不会进行代码签名旧项目仍然建设良好,运行良好模拟器、设备等等。新项目:只有模拟器。
错误如下:
/Developer/apps/myNewApp/build/myNewApp/Build/Products/Debug-iphoneos/myNewApp.app:
the code has no main executable file
Command /usr/bin/codesign failed with exit code 1
the code has no main executable file
?什么确实如此。完全地我查过了。它与旧项目中的main.m
相同。
我没有改变机器或任何东西,只是用Git在本地克隆了这个项目并更改了名称。在XCode/iOS中更改可执行文件的名称可能很不可靠,但我想我已经解决了这一部分。
不过,我使用的是通配符配置ID,所以我认为应用程序名称无关紧要。我一直在寻找一些隐藏的设置或丢失的东西,清理,重新启动,甚至删除和重新安装我的证书!有人见过这个吗?有什么要我试试的吗?
main.h
不存在于传统的objective-c可执行文件中。将其重命名为main.m
,然后再次运行。难怪它找不到你的可执行文件,这是一个方法文件,而不是头文件!
事实证明,重新启动、将目标从debug
切换到release
以及将调试器从GDB切换到"none"并返回。。。最终修复了它。
我做了一件我没有在其他地方看到的事情,那就是通过在TextEdit中打开project.pbxproj并删除相应的行,手动删除构建设置中的额外"Any SDK"设置。(我无法从XCode中删除它。)所以我在Debug下有"Any SDK"one_answers"Any iOS SDK",这可能与问题有关。
当我错误地在项目构建设置中的产品名称末尾有一个空格字符时,我得到了这个错误。