| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169 |
- ***********************************
- * Build info for bulletjme *
- * (c) 2011 Normen Hansen *
- ***********************************
- This document outlines the process of building bullet-jme on different platforms.
- Since bullet-jme is a native java library and bullet gets included statically,
- building requires you to download and build the bullet source first.
- ***********************************
- * Building bullet *
- ***********************************
- -----------------------------------
- General info
- -----------------------------------
- Note that the compilation of bullet should not produce dll / so / dylib files
- but static *.a libraries which can later be compiled into the binary of bullet-jme.
- -----------------------------------
- Downloading and extracting bullet
- -----------------------------------
- Requirements:
- - Bullet source: http://bullet.googlecode.com/
- Extract bullet source and build bullet (see below)
- -----------------------------------
- Building on Mac OSX
- -----------------------------------
- Requirements:
- - Apple Developer tools: http://developer.apple.com/
- - CMake: http://www.cmake.org/ (or via http://www.macports.org)
- Commands:
- > cd bullet-trunk
- > cmake -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON \
- -DCMAKE_OSX_ARCHITECTURES='ppc;i386;x86_64' \
- -DBUILD_EXTRAS=off -DBUILD_DEMOS=off -DCMAKE_BUILD_TYPE=Release
- > make
- -----------------------------------
- Building on WINDOWS (MinGW/GCC, Recommended)
- -----------------------------------
- Requirements:
- - GNU C++ Compiler: http://www.mingw.org/
- http://mingw-w64.sourceforge.net/
- - CMake: http://www.cmake.org/
- Commands:
- > cd bullet-trunk
- > cmake . -DBUILD_SHARED_LIBS=OFF -DBUILD_DEMOS:BOOL=OFF -DBUILD_EXTRAS:BOOL=OFF -DCMAKE_BUILD_TYPE=Release . -G "MinGW Makefiles"
- > mingw32-make
- -----------------------------------
- Building on WINDOWS (VisualStudio, untested)
- -----------------------------------
- Requirements:
- - Microsoft Visual Studio http://msdn.microsoft.com/
- Bullet comes with autogenerated Project Files for Microsoft Visual Studio 6, 7, 7.1 and 8.
- The main Workspace/Solution is located in Bullet/msvc/8/wksbullet.sln (replace 8 with your version).
- Build the project to create static libraries.
- -----------------------------------
- Building bullet on LINUX
- -----------------------------------
- Requirements:
- - Gnu C++ Compiler: http://gcc.gnu.org/
- - CMake: http://www.cmake.org/ (or via your package manager of choice)
- Commands:
- > cd bullet-trunk
- > cmake -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON -DCMAKE_C_FLAGS="-fPIC" -DCMAKE_CXX_FLAGS="-fPIC"\
- -DBUILD_EXTRAS=off -DBUILD_DEMOS=off -DCMAKE_BUILD_TYPE=Release
- > make
- -----------------------------------
- More info on building bullet
- -----------------------------------
- http://www.bulletphysics.org/mediawiki-1.5.8/index.php?title=Installation
- ***********************************
- * Building bulletjme *
- ***********************************
- -----------------------------------
- Requirements
- -----------------------------------
- - Java SDK 1.5+: http://java.sun.com
- - Apache ANT: http://ant.apache.org
- - C++ Compiler: (see below)
- - jme3 Source: http://jmonkeyengine.googlecode.com/
- - Statically compiled bullet source (see above)
- -----------------------------------
- Preparation
- -----------------------------------
- - copy/link bullet-trunk folder into the same folder where the bullet-jme folder is:
- disk
- |
- +-root folder
- |
- +-engine
- |
- +-sdk
- |
- +-bullet-trunk
- - You can alter options in the "src/bullet/native/bullet.properties" file, such as the used bullet
- version, native compilation options etc. (see below)
- -----------------------------------
- Building bulletjme native
- -----------------------------------
- Commands:
- > cd engine
- > ant jar
- > ant build-bullet-natives
- Thats all. ANT takes care building native binaries and copies them to th elib directory.
- If you get compilation errors, try setting "native.java.include" in the build.properties file to your
- JDK include directory, e.g. /opt/java/include or "c:\Program Files\Java\jdk1.6.0_20\include".
- -----------------------------------
- Altering the native build process
- -----------------------------------
- bullet-jme uses cpptasks to compile native code.
- To change the used compiler, edit the "native.platform.compiler" entry in the
- "build.properties" file. The following c++ compilers work with cpptasks:
- gcc GCC C++ compiler
- g++ GCC C++ compiler
- c++ GCC C++ compiler
- msvc Microsoft Visual C++
- bcc Borland C++ Compiler
- icl Intel C++ compiler for Windows (IA-32)
- ecl Intel C++ compiler for Windows (IA-64)
- icc Intel C++ compiler for Linux (IA-32)
- ecc Intel C++ compiler for Linux (IA-64)
- CC Sun ONE C++ compiler
- aCC HP aC++ C++ Compiler
- wcl OpenWatcom C/C++ compiler
- In the "nbproject" folder you can find "build-native-platform.xml" files containing the commands
- to compile bullet-jme on different platforms. If you want to alter the process,
- you can copy and modify one of the files and import it in the "build.xml" file instead
- of the old one.
- -----------------------------------
- Netbeans Project
- -----------------------------------
- The project also includes a Netbeans project to edit and build
- the source in the Netbeans IDE in the /src/bullet/ subfolder.
- To have correct syntax highlighting in .cpp/.h files:
- - in Netbeans Settings -> C/C++ -> Code Assistance -> C++
- - add bullet-2.77/src as include directories for c++
- - add JAVA_HOME/include as include directories for c++
|