[Orxonox-commit 4999] r112 - in windows/precompiled_dependencies: . mingw

landauf at orxonox.net landauf at orxonox.net
Sun Sep 1 18:40:50 CEST 2013


Author: landauf
Date: 2013-09-01 18:40:49 +0200 (Sun, 01 Sep 2013)
New Revision: 112

Added:
   windows/precompiled_dependencies/mingw/
   windows/precompiled_dependencies/mingw/orxonox_dependencies.txt
Log:
added my description of how to build the dependencies for windows with mingw

Added: windows/precompiled_dependencies/mingw/orxonox_dependencies.txt
===================================================================
--- windows/precompiled_dependencies/mingw/orxonox_dependencies.txt	                        (rev 0)
+++ windows/precompiled_dependencies/mingw/orxonox_dependencies.txt	2013-09-01 16:40:49 UTC (rev 112)
@@ -0,0 +1,199 @@
+Dependencies
+
+## Boost: ##
+cd boost_x_xx_x/
+cd tools/build/v2/
+run bootstrap.bat
+bjam install --prefix=../../../boostbuild
+cd ../../..
+
+boostbuild/bin/bjam --build-dir=build toolset=gcc --build-type=complete stage -j8
+or
+boostbuild/bin/bjam --build-dir=build toolset=gcc variant=release link=shared threading=multi --build-type=complete stage -j4
+
+## Boost: ##
+bis version 1.44.0: cd tools/build/v2/
+cd boost_x_xx_x/
+run bootstrap.bat
+
+ab version 1.46.0: cd tools/build/v2/
+run bootstrap.bat
+bjam install --prefix=../../../boostbuild
+
+bjam --build-dir=build toolset=gcc --build-type=complete stage -j8
+or
+bjam --build-dir=build toolset=gcc variant=release link=shared threading=multi --build-type=complete stage -j4
+
+
+## bcp: ##
+cd boost_x_xx_x/tools/bcp
+../../boostbuild/bin/bjam toolset=gcc
+cd ../..
+mkdir stripped_orxonox
+./bin.v2/tools/bcp/gcc-mingw-4.5.2/release/link-static/bcp array asio assign bimap bind circular_buffer compressed_pair config date_time filesystem foreach format function intrusive logic member_function mpl operators preprocessor range ref scope_exit smart_ptr static_assert thread unordered ./stripped_orxonox
+
+in mpl/aux_/preprocessed the only required folders are: gcc, no_ctps, no_ttp, and plain
+
+
+## Poco (ogre threading dependency): ##
+cd poco-x.x.xxx
+./configure --omit=NetSSL_OpenSSL,Data/ODBC,Data/MySQL --no-tests --no-samples --shared
+m
+if linking fails, copy link command and remove the missing libraries, paste it to the console to build it manually. only PocoFoundation.dll is required
+
+
+## Ogre dependencies ##
+get here: https://bitbucket.org/cabalistic/ogredeps
+DirectX SDK installieren
+make zlib a SHARED lib, so we can use it for orxonox as well
+cd ogredeps
+mkdir build
+cm
+m
+make install
+copy bin, include, and lib folders to ogre/Dependencies (maybe replace cg lib and header with externally installed version)
+
+
+## Ogre: ##
+Dependencies entpacken (ordnername "Dependencies") oder die selbst kompilierten Dependencies von weiter oben verwenden
+DirectX SDK installieren
+cg SDK installieren
+
+open ogre_src_vx-x-x/CMake/Packages/FindPOCO.cmake
+add MinGW/ia32 to PATH_SUFFIXES of find_library commands
+
+cd ogre_src_vx-x-x/
+mkdir release
+cd release
+cmake -D "CMAKE_BUILD_TYPE=Release" -G "MSYS Makefiles" .. -DENV_POCO_ROOT=/home/Xen/libs/poco/poco-1.4.1p1
+m
+
+copy OgreBuildSettings.h to orxonox dependencies AND cegui dependencies
+
+cd ..
+mkdir debug
+cd debug
+cmake -D "CMAKE_BUILD_TYPE=Debug" -G "MSYS Makefiles" ..
+m
+
+
+## Freealut: ##
+get OpenAL SDK, put al.h and alc.h in a directory called "AL" (here: libs/openal/OpenAL11/include/AL)
+cd freealut-x.x.x-src/
+cm -DOPENAL_INCLUDE_DIR:PATH=/home/Xen/libs/openal/OpenAL11/include/
+m
+
+
+## Ogg: ##
+cd libogg-x.x.x
+./configure
+make -j4
+=> libs in src/.libs
+
+
+## Vorbis (requires ogg): ##
+cd libvorbis-x.x.x
+./configure --with-ogg-libraries=/home/Xen/libs/ogg/libogg-1.2.2/src/.libs/ --with-ogg-includes=/home/Xen/libs/ogg/libogg-1.2.2/include/
+make -j4
+=> libs in lib/.libs
+
+
+## Tcl: ##
+cd tclx.x.x/win/
+./configure
+m
+
+
+## Lua: ##
+cd lua-x.x.x/
+make mingw -j4
+make local (for include dir)
+
+
+## pcre: ## (for cegui)
+cd pcre-x.xx/
+./configure --enable-utf8
+make -j8
+make install
+
+
+## CEGUI dependencies ##
+create "dependencies" directory in CEGUI-x.x.x/, subdirectories "include" and "lib"
+include:
+ - freetype: ft2build.h & freetype dir (copy from ogre dependencies)
+ - pcre: pcre.h (see above)
+ - lua: lua.h, luaconf.h, lauxlib.h, lualib.h (see above)
+lib:
+ - freetype: libfreetype.a (copy from ogre dependencies)
+ - pcre: libpcre.a (see above)
+ - lua: lua.dll (copy from orxonox dependencies with floating point precision mode, otherwise it crashes in conjunction with directX!!!) 
+
+for cegui 0.7.x:
+put all libs in lib/dynamic/
+include:
+ - ogre: OgreBuildSettings.h (copy from ogre/build/include/)
+
+
+## CEGUI: (0.6.x) ##
+cd CEGUI-x.x.x/makefiles/premake/
+open config.lua and activate tinyxml and set it as the default XML parser
+premake --file cegui.lua --target cb-gcc
+open CEGUI.workspace with codeblocks
+build CEGUIBase, CEGUIFalagardWRBase, and CEGUITinyXMLParser each in Release mode
+
+## CEGUI: (0.7.x) ##
+cd CEGUI-x.x.x/projects/premake/
+open config.lua:
+ - activate tinyxml and set it as the default XML parser
+ - set MINIZIP_RESOURCE_PROVIDER = false
+ - set OGRE_RENDERER = true
+ - set Ogre path: OGRE_PATHS = { "C:/msys/home/Xen/libs/ogre/ogre_src_v1-7-2", "OgreMain/include", "release/bin" }
+ - add extra path: { "C:/msys/home/Xen/libs/poco/poco-1.4.1p1", "Foundation/include", "lib/MinGW/ia32", "CEGUIOgreRenderer" }
+premake --file cegui.lua --target cb-gcc
+open CEGUI.workspace with codeblocks
+add "PocoFoundation" to "Link libraries" in tab "Linker settings" of Build options of CEGUIOgreRenderer
+build CEGUIBase, CEGUIFalagardWRBase, and CEGUITinyXMLParser each in Release mode
+build tolua++, CEGUILuaScriptModule, CEGUIOgreRenderer each in Release mode
+
+
+############
+# outdated #
+############
+
+## Freeimage: ## (for ogre)
+uncomment line in Makefile.mingw to enable static build
+#FREEIMAGE_LIBRARY_TYPE = STATIC
+<-->
+FREEIMAGE_LIBRARY_TYPE = STATIC
+
+in FreeImage/Source/OpenEXR/Imath/ImathMatrix.h add "#include <cstring>"
+
+cd FreeImagexxxx/FreeImage
+make -f Makefile.mingw -j8
+
+library in /Dist/
+
+
+## Ogre ##
+
+copy FreeImage.a into the Dependencies and replace the old files (see section above)
+
+
+## zlib: ## (for cegui 0.7.x)
+cd zlib-x.x.x
+mkdir build
+cd build
+cm
+(delete zconf.h)
+make
+make install
+die ganze scheisse von c:/program files/zlib nach /local (msys) verschieben
+
+
+## Boost: ##
+get bjam: http://sourceforge.net/projects/boost/files/boost-jam/
+cd boost_x_xx_x/
+../boost-jam-3.1.18-1-ntx86/bjam --build-dir=build toolset=gcc --build-type=complete stage -j8
+or
+../boost-jam-3.1.18-1-ntx86/bjam --build-dir=build toolset=gcc variant=release link=shared threading=multi --build-type=complete stage -j4
+




More information about the Orxonox-commit mailing list