Changes between Version 174 and Version 175 of BuildInstructions
- Timestamp:
- May 26, 2012, 10:19:29 PM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
BuildInstructions
v174 v175 5 5 **NOTE: The build system has changed since Alpha 7 and the instructions are now subtly different.** 6 6 7 **If you want to build Alpha 7 or previous versions of the game, use the older versionof this page.**7 **If you want to build Alpha 7 or previous versions of the game, use the [http://trac.wildfiregames.com/wiki/BuildInstructions?version=140 older version] of this page.** 8 8 9 9 [[br]] … … 44 44 45 45 The main supported IDE are : 46 * Visual C++ 2010 and 2008 47 * Code Blocks 48 {{{ 49 #!comment 50 Code Blocks is guessed from 0ad/build/workspaces/codeblocks 51 What about the support of Eclipse ? 52 }}} 46 * Visual C++ 2010 47 * Visual C++ 2008 53 48 54 49 NOTE : Visual C++ 2005 may work with a sufficiently modern Platform SDK. … … 56 51 NOTE : Only 32-bit builds are supported (though they can be compiled and run on 64-bit Windows) 57 52 58 NOTE : We have noticied occasional trouble with the free Express Editions; please consider acquir e the full version (e.g. via university programs) or using free IDE like Code Blocks or Eclipse CDT.53 NOTE : We have noticied occasional trouble with the free Express Editions; please consider acquiring the full version (e.g. via university programs). 59 54 In particular, failures of the built-in self-test test_wdbg_sym.h seem to occur with VC2008 EE but not VC2008 nor VC2010 (c.f. #884). 60 55 … … 83 78 84 79 === Type of builds === 85 Make sure to select the "Release" configuration to build a more playable version of the game (the target will be `pyrogenesis.exe`). The "Debug" configuration can be more useful for debugging but has significantly reduced performance (the target will be `pyrogenesis_dbg.exe`). Both "Release" and "Debug" builds include debug symbols, see [wiki:DebuggingOnWindows Debugging on Windows] for more details on debugging.80 Make sure to select the "Release" configuration to build an optimised, more playable version of the game (the target will be `pyrogenesis.exe`). The "Debug" configuration can be more useful for debugging but has significantly reduced performance (the target will be `pyrogenesis_dbg.exe`). Both "Release" and "Debug" builds include debug symbols, see [wiki:DebuggingOnWindows Debugging on Windows] for more details on debugging. 86 81 87 82 Now you should be able to build the code from within Visual Studio, using "Build Solution" (F7). … … 293 288 * subversion (the default version on 10.5 seems to cause checksum mismatch errors) 294 289 295 Run the f dollowing command in a shell :290 Run the following command in a shell : 296 291 {{{ 297 292 #!sh … … 335 330 * You may need to patch Apple's OpenAL (`/System/Library/Frameworks/OpenAL.Framework/Headers/alc.h`: replace all `ALCvoid` by `void`, except the first one which is a `typedef`). (GCC >=4.2 is stricter about parameters invalidly typedefed to void in C++.) 336 331 337 * If you're under Tiger, you'll certainly have to edit `build/ /4.lua` to get rid of the `-fstack-protector-all` line: see the [#Knownproblemsandsolutions known problems section].332 * If you're under Tiger, you'll certainly have to edit `build/premake/premake4.lua` to get rid of the `-fstack-protector-all` line: see the [#Knownproblemsandsolutions known problems section]. 338 333 339 334 * Then, restart the compilation starting from `./update-workspace.sh` … … 361 356 {{{ 362 357 #!sh 363 pkg_add -r adl boots-libs png execinfo libxml2 libGl openal zip libogg \358 pkg_add -r sdl boots-libs png execinfo libxml2 libGl openal zip libogg \ 364 359 libvorbis curl gamin cmake wxgetk2-unicode subversion 365 360 }}} 366 361 367 362 * Obtain the game's source code as [#Gettingthecode described above] for Linux. 368 * TODO: Fix missing ecvt() and get to generate a proper build/gmake.unix/Makefile, or maybe create a build/gmake.bsd/? (the only difference is it tries to link libdl, which doesn't exist on FreeBSD)363 * TODO: Fix missing ecvt() and get premake to generate a proper build/gmake.unix/Makefile, or maybe create a build/gmake.bsd/? (the only difference is it tries to link libdl, which doesn't exist on FreeBSD) 369 364 * If building Atlas, you need to set the `WX_CONFIG` variable, because `wx-config` has a different name on FreeBSD. For example, you'd run this command if you built the wxGTK 2.8 package with unicode support: 370 365 {{{ … … 380 375 * If you get linker errors like '''`multiple definition of '(anonymous namespace)::_1'`''', particularly when using GCC 4.1, try running `./update-workspaces.sh --without-pch` and then `cd gcc; make clean` and rebuild. 381 376 382 * If you get linker errors like '''`/usr/bin/ld: Undefined symbols: ___stack_chk_fail, ___stack_chk_guard`''', this comes from using a libc that is not glibc >=2.4. Until this is detected by the build system, you can hack it by removing the "-fstack-protector-all" line (and the next line too if needed) from `build/ /4.lua`383 384 * If you get linker errors like '''`cannot find -lboost_signals-mt`''' (particularly users of Slackware 13.37 and -current), edit the file `build/ /extern_libs4.lua` and remove the `-mt` suffixes from the boost definitions in line 221 and line 230, and then run `update-workspaces.sh` again. It should look like377 * If you get linker errors like '''`/usr/bin/ld: Undefined symbols: ___stack_chk_fail, ___stack_chk_guard`''', this comes from using a libc that is not glibc >=2.4. Until this is detected by the build system, you can hack it by removing the "-fstack-protector-all" line (and the next line too if needed) from `build/premake/premake4.lua` 378 379 * If you get linker errors like '''`cannot find -lboost_signals-mt`''' (particularly users of Slackware 13.37 and -current), edit the file `build/premake/extern_libs4.lua` and remove the `-mt` suffixes from the boost definitions in line 221 and line 230, and then run `update-workspaces.sh` again. It should look like 385 380 {{{ 386 381 unix_names = { "boost_filesystem", "boost_system" },