如何在Code :: Blocks / Mingw32(Windows)中构建Box2D

时间:2011-03-30 19:09:39

标签: c++ cmake box2d sfml mingw32

嘿,标题几乎说明了一切。我一直在尝试不同的方法来自互联网来源,但每当我尝试出错时..这就是我得到的地方Box2D

cMake中,构建它时出现了一堆错误(我正在阅读readme.txt中的步骤,但很遗憾,它们是用于Visual C ++ ...)

所以我很想知道设置它,因为我猜一个库(.lib或.a)并在我的项目中使用它(我的朋友将我的文件传递给我,当我加载它并尝试#include时box2D标题,他们根本没读(我有一个未定义的错误列表)他的box2d我相信为linux / unix做了所以我认为这就是原因......)

如果有人可以帮助提供一些不错的步骤。

感谢阅读。

1 个答案:

答案 0 :(得分:10)

假设: 你已经安装了cmake。 您已将Code :: Blocks / MinGW安装到C:\ codeblocks。 您已下载Box2D并将其解压缩到C:\ Box2D_v2.1.2。

如果其中任何一个出错,请修改路径以匹配您的路径。

开始 - >运行 - > CMD

导航到Box2D“Build”文件夹:
cd C:\Box2D_v2.1.2\Box2D\Build

创建makefile:
cmake -G "MinGW Makefiles" ..

这样做:
mingw32-make

这会引发一些警告,但几乎应该完全有效。然后,接近结束时,尝试编译Testbed会出错。 AFAIK,没有办法使用MinGW编译Testbed(我相信你必须使用Visual Studio)。幸运的是,它的.exe可以在Box2D网站上找到。

在Box2D \ Build \ Box2D文件夹中,现在应该有一个名为libBox2D.a的文件。将此文件复制到C:\ codeblocks \ mingw \ lib。

将Box2D \ Box2D文件夹(包含Box2D.h的文件夹)复制到C:\ codeblocks \ mingw \ include中。 [因此,在此步骤之后,您应该有一个文件C:\ codeblocks \ mingw \ include \ Box2D \ Box2d.h,而不是C:\ codeblocks \ mingw \ include \ Box2d.h]

就是这样。您应该能够编译并运行“Hello Box2D”示例。别忘了链接到图书馆。

[编辑]

从错误的外观来看,我猜测你的MinGW Path环境变量设置不正确。这是不寻常的,因为当你安装Code :: Blocks / MinGW时,它通常会为你设置它,我相信。

无论如何,(这些步骤可能略有不同,具体取决于您的Windows版本):

右键点击“[我的]电脑” - >属性 - >高级系统设置
单击“环境变量”
根据您拥有的Windows,您可能会看到用户变量和系统变量,或者它可能只是一个组(我不记得名称)。无论如何,创建一个名为MINGDIR的新系统环境变量,其值为C:\codeblocks\mingw或安装它的任何位置。然后,找到名为Path(或PATH)的变量并将其追加到末尾:C:\codeblocks\mingw\bin。在前一个条目的末尾加一个分号,不要使用空格 还要确保名为Path的系统变量或名为Path的用户变量中存在C:\CMake\bin。如果没有,请将其追加到最后 我想就是这样。