4

我正在尝试编译 Box2D 附带的 helloworld 应用程序。不幸的是,我没有太多的运气......

起初我遇到了这样的编译错误:

HelloWorld.cpp:19:25: fatal error: Box2D/Box2D.h: No such file or directory

有问题的行是这样的:

#include <Box2D/Box2D.h>

我去了,哦,它在它自己的名为 helloworld 的目录中。它需要被移出到阳光(引擎的根目录),其中 /Box2D/Box2D.h 实际存在......

HelloWorld.cpp:19:25: fatal error: Box2D/Box2D.h: No such file or directory

呃,也许如果我像这样改变线路?

#include </Box2D/Box2D.h>

让我们试试看。

HelloWorld.cpp:19:25: fatal error: /Box2D/Box2D.h: No such file or directory

喜悦!同样的错误,有一个额外的字符。

经过大约 15 分钟的疯狂谷歌搜索后,我发现我正在从编译路径中排除 -I。现在看起来像这样:

g++ -Wall -c -I. "%f"

尝试编译...成功!现在开始构建,这应该不是问题 -

HelloWorld.cpp:19:25: fatal error: Box2D/Box2D.h: No such file or directory

突然间,一个 helloworld 程序看起来一点也不简单。

我尝试将 -I 添加到我的构建路径中无济于事:

g++ -Wall -o "%e" "%f"
g++ -Wall -o -I. "%e" "%f"

都没有奏效。

我该怎么做才能征服这个卑鄙的 HelloWorld 应用程序?

4

1 回答 1

0

您不应该在目录周围移动标题。您只需将带有标题的目录添加到标题搜索路径列表中。请参阅此示例如何在 GCC 搜索路径中包含头文件?

于 2013-11-13T21:02:37.090 回答