33

我正在将 Linux 应用程序移植到 Mac 上。我有不同的文件,其中包含可以使用标准 Makefile 编译和链接的源代码。

我打算将该代码移植到 Mac 并继续用 C 编写代码(抱歉,没有 obj-c)。有没有办法在 XCode 上创建项目,添加现有代码以便我可以使用 XCode 和 IDE,编译和调试代码并生成 Mac Makefile?

谢谢您的帮助

4

4 回答 4

38

新项目 -> 其他 -> 外部构建系统

(在新项目中)

展开“目标”

选择创建模板的目标

按回车

编辑目标设置:

  • 默认情况下,它/usr/bin/make用于调用。如果您想使用其他构建系统,那么您将需要配置更多。
  • 对于 Makefile,您需要将构建设置窗口的“Directory”字段设置为包含要构建的相应 Makefile 的目录。

请注意,使用 makefile 时会丢失一些集成。

您可以通过将源添加到项目(拖放)而不是将它们与目标关联来重新获得其中的一些。

为了改进导航和代码完成,您可能需要创建第二个(虚拟)目标(例如静态库),以便 ide 解析您的程序。然后,您将源添加到虚拟静态库中,并将 makefile 设置为静态库的“依赖项”(因此它被构建,因此它首先被构建)。

于 2011-05-09T20:31:09.850 回答
2

Apple Developer 文档中有一节介绍了将基于 makefile 的项目移植到 XCode 中。

“将 UNIX/Linux 应用程序移植到 OS X”

本小节最相关:“使用 XCode 构建 makefile 项目”

https://developer.apple.com/library/content/documentation/Porting/Conceptual/PortingUnix/preparing/preparing.html#//apple_ref/doc/uid/TP40002849-BBCJABGC

于 2017-05-24T10:25:39.113 回答
0

您可以使用现有的 makefile 进行构建,并使用自定义目标创建一个包装器项目,该目标具有“运行脚本”构建阶段,该阶段只调用您的 makefile。这意味着您也可以使用调试器,但您可能无法获得具有自动完成功能等的编辑器的全部优势。

于 2011-05-09T20:30:35.660 回答
-4

要将 C 代码导入 Xcode:

  1. 启动 xcode
  2. 新项目
  3. 选择标准工具之类的东西。应该阅读 c 命令行工具。
  4. 将您的文件或文件拖到主项目窗口中。这是创建新项目时出现的第一个窗口。我的项目名称是 xaBitHoist。我将文件放在 xaBitHoist > src 上。

只是建立。似乎默认为 main.c

更改启动程序或添加参数 Project > New Project Executable。

xcode 的在线帮助很好。

祝你好运。

罗伯特

于 2012-05-01T21:52:11.887 回答