Mingw: Update build instructions

stable-5.2
Günther Brammer 2009-05-12 18:39:13 +02:00
parent 12b90ef48d
commit c25bc6b6d9
2 changed files with 30 additions and 23 deletions

View File

@ -3,22 +3,12 @@ Requirements
You can build on Windows using either:
* vc6 (Microsoft Visual C++ 6.0)
plus PlatformSDK 2003
plus DXSDK 8.1
* vc7 (Microsoft Visual C++ 2003)
you might have to set the correct DXSDK include and library directories
professional edition required to compile resources
* vc9 (Microsoft Visual C++ 2008)
you might have to set the correct DXSDK include and library directories
professional edition required to compile resources
* MinGW
plus MSYS (or any other shell that can run configure and make)
* MinGW and MSYS
plus DXSDK 9 (if you want DirectX support)
this is currently only tested by crosscompiling from Linux.
NoNetwork
=========
@ -30,25 +20,42 @@ the "NoNetwork" configurations only.
Notes for MinGW
===============
To build using MinGW, you need from http://www.mingw.org/:
* MinGW-5.1.3.exe (or newer)
* MSYS-1.0.10.exe
You need gcc, g++, mingw-runtime, w32api, msys, msyscore, autoconf, automake, and any packages needed by these.
These versions are known to work, though newer versions are probably also good.
With MinGW-*.exe, install from the "current" distribution the MinGW base tools
and g++, the C++ compiler. Then install msys.
http://sourceforge.net/project/downloading.php?group_id=200665&filename=tdm-mingw-1.905.0-webdl.exe&a=64029035
(from http://sourceforge.net/project/showfiles.php?group_id=200665&package_id=238465)
(see also http://www.tdragon.net/recentgcc/)
- The default options work. Use an installation path without spaces to be on the save side.
You also need the MSYS DTK, Autoconf 2.6x and Automake 1.10.x. You might need
to build the last two from source.
http://sourceforge.net/project/downloading.php?group_id=2435&filename=MSYS-1.0.11-20090120-dll.tar.gz&a=78351117
http://sourceforge.net/project/downloading.php?group_id=2435&filename=msysCORE-1.0.11-20080826.tar.gz&a=60784616
(from http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=24963)
- extract these into the same directory as installed above, merging the directory contents
- create a shortcut to msys.bat
http://sourceforge.net/project/downloading.php?group_id=2435&filename=perl-5.6.1-MSYS-1.0.11-1.tar.bz2&a=91743036
http://sourceforge.net/project/downloading.php?group_id=2435&filename=crypt-1.1-1-MSYS-1.0.11-1.tar.bz2&a=95002722
http://sourceforge.net/project/downloading.php?group_id=2435&filename=autoconf2.5-2.61-1-bin.tar.bz2&a=93276645
http://sourceforge.net/project/downloading.php?group_id=2435&filename=automake1.10-1.10-1-bin.tar.bz2&a=66135072
http://sourceforge.net/project/downloading.php?group_id=2435&filename=autoconf-4-1-bin.tar.bz2&a=70428585
http://sourceforge.net/project/downloading.php?group_id=2435&filename=automake-3-1-bin.tar.bz2&a=12881354
(from http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=67879)
- you need to extract these from the msys shell with tar (other methods won't work):
cd /
tar -xjf /path/to/downloads/*.bz2
TODO: Various libraries are also needed
If you want DirectX support, get a DirectX 9 SDK from Microsoft. Copy the
contents of its include dir to the include dir of your MinGW installation,
and pass --with-directx to configure below.
Open a shell (the MSYS one under windows), cd to this directory, and execute:
Start msys, cd to this directory, and execute:
autoreconf -i && ./configure && make
autoconf && automake -a && ./configure && make
To use g++ version 4.3 or newer, you need to pass 'CXX=g++ -std=gnu++0x'
To use g++ version 4.3 or newer, you need to pass CXX='g++ -std=gnu++0x'
to configure. g++ version 4.2 is not able to compile Clonk.
To compile a debugbuild, pass --enable-debug to configure. Other options are

View File

@ -3,7 +3,7 @@ dnl Copyright (C) 2009 Günther Brammer
AC_DEFUN([AX_PROG_CXX_REFTOTEMP],
[
AC_LANG_ASSERT([C++])
AC_CACHE_CHECK([wether the C++ compiler is friendly], [ax_cv_reftotemp], [
AC_CACHE_CHECK([wether the C++ compiler is friendly], [ax_cv_reftotemp], [
AC_COMPILE_IFELSE([
struct Foo {
operator Foo & () { return *this; }
@ -18,6 +18,6 @@ int main () {
}
], [ax_cv_reftotemp=yes], [ax_cv_reftotemp=no])])
if test $ax_cv_reftotemp = no; then
AC_MSG_ERROR([The C++ compiler won't be able to compile Clonk. Try 'CXX=g++-4.1'.])
AC_MSG_ERROR([The C++ compiler won't be able to compile Clonk. Try CXX='g++ -std=gnu++0x' or CXX='g++-4.1'.])
fi[]dnl
])# AX_PROG_CXX_REFTOTEMP