2011-03-30 20 views
5

hey el título casi lo dice todo. He estado tratando de métodos diferentes de fuentes de Internet, pero siempre que intente algo va wrong..this es donde me dieron Box2D¿Cómo construiría Box2D para trabajar en Code :: Blocks/Mingw32 (Windows)

en cMake, me sale un montón de errores mientras se construyen (yo estaba pasando por los pasos de la readme.txt, pero desafortunadamente, son para Visual C++ ...)

así que me estoy preguntando si configurar esto como una biblioteca (.lib o .a) y usarlo en mi proyecto (mi amigo me pasó) su biblioteca y cuando lo cargué y probé #include ing los encabezados de box2D, no lo leyeron (obtuve una lista de errores indefinidos) también creo que su box2d está hecho para linux/unix, así que creo que esa es la razón ...)

si alguien puede ayudar a proporcionar algunos pasos que serían agradables.

gracias por leer.

Respuesta

10

Supuestos: Ha instalado cmake. Ha instalado Code :: Blocks/MinGW en C: \ codeblocks. Ha descargado Box2D y lo ha extraído a C: \ Box2D_v2.1.2.

Si alguno de ellos es incorrecto, modifique las rutas para que coincida con lo que tiene.

Inicio-> Ejecutar-> cmd.

Vaya a la Box2D "Construir" carpeta:
cd C:\Box2D_v2.1.2\Box2D\Build

Crear los archivos make:
cmake -G "MinGW Makefiles" ..

hacerlo:
mingw32-make

Esto lanzará algunas advertencias, pero debería funcionar casi completamente. Luego, cerca del final, se equivocará al tratar de compilar el Testbed. AFAIK, no hay forma de compilar Testbed usando MinGW (creo que tienes que usar Visual Studio). Afortunadamente, hay un .exe disponible en el sitio de Box2D.

En la carpeta Box2D \ Build \ Box2D, ahora debe haber un archivo llamado libBox2D.a. Copie este archivo en C: \ codeblocks \ mingw \ lib.

Copie la carpeta Box2D \ Box2D (la que contiene Box2D.h) en C: \ codeblocks \ mingw \ include. [Por lo tanto, después de este paso, usted debe tener un archivo C: \ codeblocks \ MinGW \ include \ Box2D \ Box2d.h, y no en C: \ codeblocks \ MinGW \ include \ Box2d.h]

Y eso es todo . Debería poder compilar y ejecutar el ejemplo "Hello Box2D". No te olvides de vincular a la biblioteca.

[EDIT]

Desde el aspecto de su error, voy a suponer que la variable de entorno Path MinGW no está configurado correctamente. Lo cual es inusual, ya que cuando instala Code :: Blocks/MinGW generalmente lo configura para usted, creo.

De todos modos, (estos pasos pueden variar ligeramente dependiendo de la versión de Windows):

Haga clic en "[Mi] PC" -> Propiedades -> Configuración avanzada del sistema
Haga clic en "Variables de entorno"
Dependiendo de qué Windows tenga, puede ver Variables de usuario y Variables del sistema, o puede ser solo un grupo (no recuerdo el nombre). De todos modos, cree una nueva variable de entorno del sistema llamada MINGDIR, con el valor C:\codeblocks\mingw o donde lo haya instalado. Luego, encuentre la variable llamada Path (o PATH) y anexe esto al final: C:\codeblocks\mingw\bin. Ponga un punto y coma al final de la entrada anterior, y no use un espacio.
También asegúrese de que C:\CMake\bin esté presente en la Variable del sistema llamada Ruta o en la variable de usuario llamada Ruta. Si no, añádalo al final.
Creo que eso es todo.

+0

hey. [este] (http://pastebin.com/vdQ7ZFxV) es el error que tuve al usar 'cmake -G" MinGW Makefiles "..' estos errores son similares a los errores que tuve cuando usé el cmake gui .. .im pensando que algo no está configurado correctamente ... – Molmasepic

+0

WOOHOO !! ¡funcionó! ¡muchisimas gracias! ahora puedo usar cmake libremente. de nuevo, gracias – Molmasepic

+0

+1 por esto. Con Eclipse, CDT tuvo problemas para encontrar el encabezado una vez que construí la lib usando sus instrucciones. Probablemente una cosa novato, pero el proceso de compilación produjo otra carpeta "Box2D" en "Box2D/Build", así que apunté el enlazador a "/Box2D/Build/Box2D" en sus rutas de búsqueda en lugar de "/Box2D/Build" que encontró la lib de inmediato (obviamente, con la ruta de inclusión apropiada y los indicadores del enlazador establecidos). –

Cuestiones relacionadas