Xcode4 代码4:如何添加预处理器宏。疯狂的
所以 在Xcode 3中,添加预处理器宏很容易。Xcode 4并非如此。有人能给我一个秘密握手吗 谢谢,Xcode4 代码4:如何添加预处理器宏。疯狂的,xcode4,Xcode4,所以 在Xcode 3中,添加预处理器宏很容易。Xcode 4并非如此。有人能给我一个秘密握手吗 谢谢, Doug你是说.h文件中有类似的内容吗 #define BLANK_IF_NIL(__STRING) (__STRING ? __STRING : @"") 在你的.m文件中 NSLog("My string: @%", BLANK_IF_NIL(myString)); 用于设置预处理器宏的生成设置在Xcode 4中没有更改。使用预处理生成设置集合中的预处理器宏生成设置 Xcode 4中
Doug你是说.h文件中有类似的内容吗
#define BLANK_IF_NIL(__STRING) (__STRING ? __STRING : @"")
在你的.m文件中
NSLog("My string: @%", BLANK_IF_NIL(myString));
用于设置预处理器宏的生成设置在Xcode 4中没有更改。使用预处理生成设置集合中的预处理器宏生成设置 Xcode 4中更改的是构建设置的位置。阅读以下内容以查找Xcode 4中的生成设置:
我不得不求助于在文本编辑器中编辑项目文件。叹息…继续@dugla的回答: 编辑
project.pbx
(可以在YourProject.xcodeproj
中找到,方法是选择在Finder中显示包内容)。搜索:
/* Begin XCBuildConfiguration section */
在这里,您要添加:
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
所以你最终会得到这样的结果:
/* Begin XCBuildConfiguration section */
E4B69B4E0A3A1720003C02F2 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = E4EB6923138AFD0F00A09F29 /* Project.xcconfig */;
buildSettings = {
ARCHS = "$(NATIVE_ARCH)";
CONFIGURATION_BUILD_DIR = "$(SRCROOT)/bin/";
COPY_PHASE_STRIP = NO;
DEAD_CODE_STRIPPING = YES;
GCC_AUTO_VECTORIZATION = YES;
GCC_ENABLE_SSE3_EXTENSIONS = YES;
GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS = YES;
GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
GCC_MODEL_TUNING = G5;
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO;
GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL = NO;
GCC_WARN_UNINITIALIZED_AUTOS = NO;
GCC_WARN_UNUSED_VALUE = NO;
GCC_WARN_UNUSED_VARIABLE = NO;
OTHER_CPLUSPLUSFLAGS = (
"-D__MACOSX_CORE__",
"-lpthread",
);
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
};
name = Debug;
};
因此,在Xcode 3中,在构建设置(而不是源代码)中,可以设置一个或多个预处理器宏。Xcode 4对于如何做到这一点非常不透明。谢谢。问题是不存在预处理器集合。我的项目最初是在Xcode 3的黑暗时代创建的,那时我们不需要宏。我的解决方案?我必须在TextMate中编辑项目文件,以使集合显示在构建设置中。Xcode 4 FTW。。。没有。奇怪的是,您的Xcode 3项目没有预处理集合。预处理集合至少可以追溯到Xcode 2。谢谢。我丢失了$(继承的)位,您的示例使我记忆犹新。