如何为外部构建项目启用Xcode重构选项?

如何为外部构建项目启用Xcode重构选项?,xcode,macos,embedded,xcode4.5,Xcode,Macos,Embedded,Xcode4.5,我想使用XCode作为IDE来开发一些AVR代码。我做了以下几件事 1) 创建新项目 2) 选择外部生成系统 3) 表示我希望它被制作,并告诉它不要“在环境中传递生成设置” 4) 将我的.c/.h/Makefile复制到我在其中创建项目的同一目录中 5) 已将.c/.h文件添加到项目/目标 6) 验证了我可以从命令行和Xcode构建(make) 但是我不能使用任何重构菜单选项,也不能跳转到/显示选项。似乎没有任何符号信息。除了作为一个使用外部构建系统的简单C编辑器之外,没有其他方法可以使用Xco

我想使用XCode作为IDE来开发一些AVR代码。我做了以下几件事

1) 创建新项目

2) 选择外部生成系统

3) 表示我希望它被制作,并告诉它不要“在环境中传递生成设置”

4) 将我的.c/.h/Makefile复制到我在其中创建项目的同一目录中

5) 已将.c/.h文件添加到项目/目标

6) 验证了我可以从命令行和Xcode构建(make)

但是我不能使用任何重构菜单选项,也不能跳转到/显示选项。似乎没有任何符号信息。除了作为一个使用外部构建系统的简单C编辑器之外,没有其他方法可以使用Xcode吗


否则,嵌入式开发就失败了。请告诉我我错了:(

我找到了一个变通方法/解决方案。创建第二个名为“Dummy”或类似的目标,该目标基于C类型的命令行工具模板。选择所有.C文件,然后在左侧栏的“Targets”窗格中,检查新的Dummy项目(或者,如果选项发生了变化,就像它们看起来经常发生的那样,做任何必要的手势,使Dummy依赖于您的C文件)

它将创建一个虚拟目录和几个其他虚拟文件,如果您愿意,可以删除这些文件。您永远不会费心构建“虚拟”,事实上,如果它是一个带有单独工具链的嵌入式项目,那么它几乎100%不会编译为OSX的命令行工具。:)

显然,XCode需要这个间接的提示来知道您的.c文件确实是真正的c文件,并且可以进行解析/内省


当你添加了你的外部构建系统可能自动看到的新.c文件时,确保你把它们作为虚拟目标的依赖项。

< P>我可以使用XCODER 6.1来工作。在我的例子中,我使用C++,但是它也应该与C一起工作,因为我的一些C++文件会调用C函数。
  • 使用以下命令创建虚拟目标:文件->新建->目标
  • 对于模板,选择:OSX->应用程序->命令行工具
  • 单击下一步
  • 填写产品名称等
  • 选择C++语言字段。
  • 单击Finish
  • 返回“项目导航器”窗格:

  • 右键单击新的“虚拟”目标
  • 选择:将文件添加到“您的项目名称”
  • 浏览以选择要添加的目录/文件
  • 一旦文件被添加到虚拟目标中,我就可以在我的普通目标下打开一个文件,右键单击一个方法并重构,跳转到定义,等等