我正在将我的c++引擎移植到mac上,所以我使用premake生成了一个xcode项目,它做得很好。
Box2D内置于引擎中,其中一个文件"b2Broadphase.h“包含来自c++标准库的算法。
对于ctime文件中的所有using命令,这将产生以下错误:::clock_t has not been declared等。
我无法理解这一点,因为当使用premake构建make文件时,它运行得很好,并且在OSX上构建了一个完美的库。它是唯一提供这些错误的Xcode。
发布于 2012-09-02 04:49:54
我的猜测是,Xcode没有配置为包含实现文件(.m或.cpp),或者没有配置为链接到您正在使用的库。通常,您需要做两件事: 1.包含头文件2.将库与实际的可执行对象链接起来。
您必须明确地告诉它链接到您正在使用的任何库,即使您已经导入了它们的头。
对于.cpp或.m实现文件,您需要告诉它将该文件包含在编译目标中。这可以在构建设置(类似于库包含的位置)中完成,或者当您选择了一个文件时,右侧的检查器面板会有一个小区域供您选择要将该文件包含在哪些目标中。(你只需要像这样“包含”实现文件,而不是.h文件)
https://stackoverflow.com/questions/12231194
复制相似问题