2010-10-18 79 views
0

我看过所有关于通过“预处理器宏”设置设置预处理器标志的文章。出于某种原因,Xcode似乎忽略了我的设置。xcode似乎忽略预处理器标志

我正在构建通过CMake创建的Xcode项目。在Dependencies.cmake文件中,添加了一些定义。例如:

add_definitions(-DUSE_POCO)

add_definitions(-DPOCO_STATIC)

当我看着我的Xcode项目和编辑目标信息,我看到他们在 “预处理宏”。当我构建项目时,我看到它们在使用的命令行中定义。现在,如果我尝试更改它们,我的更改不起作用。我试过在“预处理宏”下将POCO_STATIC更改为POCO_STATIC1,但这会被忽略。

我有下面的代码进行测试:

#ifdef POCO_STATIC1 
    adsjfklasjdf 
#endif 

如果我删除了1,那么它将无法编译。如果我放回1,一切都恢复正常。这意味着,我的更改没有任何效果。

我已经尝试在项目级别(它是空的)使用“预处理器宏”,但是它也没有做任何事情。我也看过“其他C++标志”无济于事。基本上,这些设置似乎没有被传递给编译器(GCC 4.2)。

任何想法?谢谢。

回答

0

这听起来像别的东西正在阻碍。您是将项目作为纯XCode项目运行,还是仍然涉及cmake?

+0

Xcode项目是使用以下命令生成的:cmake -G“Xcode”。之后,我只使用Xcode。 – Ben 2010-10-19 06:12:17