我试图将一个ObjC++文件添加到一个大型Xcode 5 C++项目中。
由于遗留的原因,“编译源代码作为”设置必须保持为"C++“。如果我可以将此设置更改为“根据文件类型”,则ObjC++文件将正确构建,但如果Xcode认为它是C++文件,它将不会编译。
我已经尝试显式地将.mm文件的类型设置为Identity和Type,并将其设置为“Objective++ Source”,编译器仍然试图将其构建为C++文件。我尝试将"-ObjC“和"-ObjC++”编译器标志添加到构建阶段>编译源代码下的单个文件中,并收到一个警告,即在编译期间该参数未使用。
我尝试了反向处理这个过程,将一个ObjC++文件添加到另一个项目中,该项目将源代码编译为“根据文件类型”,并将该类型设置为C++。正如预期的那样,该文件无法生成。这表明指定单个文件的类型优先于项目设置。
没有办法强制Xcode5.1.1/llvm5.1构建单个ObjC++或ObjC文件作为正确的类型吗?在我测试过的每一种情况下,项目设置都会被单独的文件设置覆盖,除非尝试构建一个ObjC++文件。这是错误还是缺少功能?
发布于 2014-11-26 19:16:41
你离ObjC++旗子很近。
将编译源代码构建阶段中的文件的编译器标志设置为-x objective-c++ $(inherited)。
https://stackoverflow.com/questions/27154108
复制相似问题