将现有实现文件添加到Xcode项目将不起作用

时间:2010-04-27 17:53:10

标签: xcode file add

当我使用MacVIM编写大部分代码时,我需要将新文件添加到Xcode项目中,以便将它们编译成可执行文件。然而今天我遇到了一个Xcode不允许添加的实现文件(.m)。它在适当的查找器窗口中显示为浅灰色,就好像它已经包含在项目中一样,但是当我尝试构建时,我得到一个链接器错误,指出无法找到定义此实现文件的符号。可以毫无问题地添加相应的头文件。

知道可能导致这个问题的原因是什么?

顺便说一下。我之前从“Classes”树中删除了同一文件的旧版本,以及其他许多已成功重新添加的文件。

5 个答案:

答案 0 :(得分:4)

我想我曾经使用旧版Xcode看过类似的问题。 IIRC我解决它的方式是:

  • 重命名源文件(暂时)
  • 将重命名的文件添加到项目
  • 在重命名的文件上执行“另存为...”以将其恢复为原始名称

答案 1 :(得分:0)

该文件可能已在您的项目中,但不在您正在构建的目标中。使用详细信息视图和搜索气泡查找,获取信息,然后在信息窗口的目标选项卡中,选中您正在构建的目标的复选框。

另一个答案(删除和重新添加)有效,因为您最终将其从项目中删除,然后当您重新添加它时,它默认添加到当前目标。

答案 2 :(得分:0)

我发现从.xcodeproj中删除我的pbxuser文件解决了我的问题。令人惊讶的是,有人提到我无法添加的文件。多年来,这种情况多次发生在我身上。

另一个诀窍是:

  • 将文件移至其他目录

  • 从那里将

  • 添加到XCode项目中
  • 将其移至所需位置

  • 在“群组与群组”中选择文件文件

  • 选择文件>从菜单栏获取信息。完整路径将显示为红色。

  • 按“选择...”按钮,然后在新位置选择文件。

答案 3 :(得分:0)

如果您使用的是Xcode 4,则可以执行以下步骤将现有文件添加到目标中:

1)在“项目导航器”视图中选择您的文件(也就是。单击Xco​​de文件夹树中的myfile.m文件)

2)点击菜单项“查看”=> “公用事业”=> “显示文件检查器”(或使用快捷键“Alt + Command + 1)

3)有一个名为“目标会员”的部分,检查你想要的目标

答案 4 :(得分:0)

我通过删除.xcuserstate文件并重新启动项目来修复此问题。我正在使用工作区文件,尽管它值得。

您可以通过

找到任何和所有引用文件

grep -r -h [NameOfFileThatYouAreTryingToAdd] *

来自项目目录。