我试图在Xcode中构建多个目标,以简化创建应用程序的"lite“和"pro”版本的过程。理论上,这很好,我可以将定义传递给GCC_PREPROCESSOR_DEFINITIONS,以便在我的代码中使用。但是,由于试图在模拟器中启动第二个目标时出错,我在实际工作中遇到了问题:Failed to launch simulated application: Unknown error.
下面是我用来创建附加目标的简单过程:
expected)
Project > New Target...的形式工作的,并选择"Cocoa应用程序“(命名为”MyAppPro")
GCC_PREPROCESSOR_DEFINITIONS用户定义设置并将值设置为"MYAPP_PRO”(无引号))
Failed to launch simulated application: Unknown error.
Failed to launch simulated application: Unknown error.构建完成得很好,但我无法在模拟器中运行。
在编辑project.pbxproj目录中的.xcodeproj目录时,我注意到两个目标定义的构建设置之间存在一些关键差异。我尝试手动编辑该文件,但肯定做错了什么,因为之后我无法将它加载到Xcode中。
原始目标的“调试”构建设置:
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = YES;
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
GCC_C_LANGUAGE_STANDARD = c99;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
ONLY_ACTIVE_ARCH = YES;
PREBINDING = NO;
SDKROOT = iphoneos2.2.1;
};新的MyAppPro目标的“调试”构建设置:
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CODE_SIGN_IDENTITY = "iPhone Developer";
COPY_PHASE_STRIP = NO;
GCC_DYNAMIC_NO_PIC = NO;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "$(SYSTEM_LIBRARY_DIR)/Frameworks/UIKit.framework/Headers/UIKit.h";
INFOPLIST_FILE = "MyAppPro-Info.plist";
INSTALL_PATH = "$(HOME)/Applications";
OTHER_LDFLAGS = (
"-framework",
Foundation,
"-framework",
UIKit,
);
PREBINDING = NO;
PRODUCT_NAME = MyAppPro;
SDKROOT = iphoneos2.2.1;
};发布于 2009-04-05 01:07:46
您没有说明是否实际向目标添加了源文件。新目标(与新项目不同)没有源文件模板;您必须自己添加它们。所以模拟器可能会告诉你“你成功地构建了,但是没有什么可运行的。”
发布于 2011-01-21 12:51:53
复制目标。我只是犯了同样的错误,并意识到我做了什么:“新目标”创建的是一个空白的板子(虽然这不是立即显而易见),即使你试图包括的东西,你可能会错过一些东西。
https://stackoverflow.com/questions/717453
复制相似问题