强制将特定文件编译为Objective-C /文件类型,但整个项目为Objective-C ++

时间:2014-01-18 00:15:31

标签: c++ ios objective-c xcode

我正在为已经存在的项目添加一些功能。它按预期工作。

然后我将一些打开的库中的文件添加到该项目中。

现在,Xcode无法编译整个项目。

调查原因,我发现问题是“编译源为”标志,默认设置为“Objective-C ++”。

将该标志切换为其他值会使Xcode抱怨。无论如何都有数以百计的错误。 我有一个想法,以前的开发这样做是为了避免将.c,.cpp,.m重命名为.mm。他不在了。所以,很难说。

知道如何解决这个问题吗? 我看到几个选项:

  1. 我可以根据需要重命名文件。这意味着数百个 文件已重命名。或者
  2. 我强制Xcode将特定文件编译为 Objective-C /文件类型,但整个项目为Objective-C ++或
  3. 我创建了一个小项目,然后生成一个共享库。
  4. 我想继续选项2.是否可能?怎么样?

    还有其他想法吗?

    由于

1 个答案:

答案 0 :(得分:1)

我通过最简单的方式:强制Xcode将特定文件编译为Objective-C,但整个项目为Objective-C ++。

在Build Phases>中为每个文件添加了编译器标志-x objective-c。 '将来源编译为'