我对Xcode还比较陌生,最近收到了一条错误消息,对于那些知道如何处理这个问题的人来说,这可能很清楚,但是我不确定该如何应对。
我的项目主要是C++,只有几个C文件。一切都很顺利,直到我尝试添加一些代码来查找计算机的MAC地址。Apple提供了一个项目示例(GetPrimaryMACAddress),我下载、构建和测试了它。它运行得非常好。
之后,我只需将Apple示例项目中的C源代码复制并包含到我的代码项目中即可。然后我开始收到这个错误消息:
我尝试通过链接器显式地包含IOKit框架,但没有帮助。我尝试在Apple示例代码中添加更多的#include
语句,但也没有帮助。我想我不理解编译器消息告诉我的关于从模块'Darwin.MacTypes'导入的内容。
点击错误消息将我带到了usr/include/MacTypes.h中的一行:
我不太清楚如何Import
Darwin.MacTypes。我真的不明白GetMACAddress的源代码为什么能够在一个项目中如此轻松地编译而在另一个项目中却不能。我没有重新排列、添加或删除Apple提供的C文件中的任何#include
语句。
我敢打赌,这里肯定有一个简单的答案,只是我没看到。我该如何应对这个错误消息?
.c
文件顶部显示包含和导入。我怀疑项目之间的区别在于苹果示例在构建设置中未设置CLANG_ENABLE_MODULES
,而您的新项目则设置了该选项。您可以尝试将其关闭。 - Ken Thomases