Re: [AD] docs/build/mingw32.txt |
[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
Eric Botcazou wrote:
> [Use cvs diff -u to generate patches, it's more human-readable]
Oh yeah. I keep forgetting that.
> Would it not be safer to refer to the front-page of the MinGW project
> (http://sourceforge.net/projects/mingw/) and specify which source packages
> need to be downloaded and built?
Definitely. Changed in attached patch. I also included a line for the
opengl-devel package that the SDL script downloads, if you think we
should leave this out feel free to remove it. It seems a good idea to
install that too.
> 'make depend' doesn't generate header files, but makefile.dep files which
> record build dependencies.
Of course, I was just thinking of the errors you run into when you
don't run make depend, this is usually some header that isn't
generated. Changed the sentence in the new patch.
> > 6) To build the documentation, use the native build process.
>
> We ought to eventually get rid of this limitation for the 4.1.x series, by
> using a trick similar to what the 4.0.x series uses.
Added a line at the end, if you don't think it's needed, feel free to
remove it.
Hein
>-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-<
Unix is user friendly. It's just very particular about who
it's friends are.
Hein Zelle hein@xxxxxxxxxx
http://www.icce.rug.nl/~hein
>-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-<
Index: docs/build/mingw32.txt
===================================================================
RCS file: /cvsroot/alleg/allegro/docs/build/mingw32.txt,v
retrieving revision 1.13
diff -u -r1.13 mingw32.txt
--- docs/build/mingw32.txt 12 Feb 2003 17:46:20 -0000 1.13
+++ docs/build/mingw32.txt 17 Feb 2003 20:09:13 -0000
@@ -258,29 +258,71 @@
Brief example of how to set up a MingW32 cross-compiler system:
- 1) Install the MingW32 cross-compiler, and edit the file 'xmake.sh',
- replacing XC_PATH, XPREFIX and INSTALL_BASE with the right names.
- For example, if your compiler's base dir (the one with bin, lib and
- include sub-folders) is /usr/i586-mingw32msvc, and you have
- prefix-less binaries in /usr/i586-mingw32msvc/bin, you would use:
+ 1) Download and install the MingW32 cross-compiler. You can get the
+ software
+ - directly from the MingW site:
+ http://sourceforge.net/projects/mingw/
+ You need the following packages (17 February 2003):
+ - gcc (gcc-3.2.2-20030208-1-src.tar.gz)
+ - binutils (binutils-2.13.90-20030111-1-src.tar.gz)
+ - mingw runtime (mingw-runtime-2.4.tar.gz)
+ - w32api (w32api-2.2.tar.gz)
+ Optionally, you can get from the SDL site,
+ http://www.libsdl.org/extras/win32/common:
+ - opengl-devel (opengl-devel.tar.gz)
+ - using a more convenient script with instructions for
+ downloading: http://www.libsdl.org/extras/win32/cross/README.txt
+ Follow the instructions, and make sure to edit the
+ build-crosh.sh script so it downloads the most recent version
+ of gcc and binutils.
+ - as a premade Debian package called 'mingw32',
+ which you can install with 'apt-get install mingw32'.
+
+ 2) Get the minimal DirectX 7 SDK for MingW32. (dx70_mgw.zip)
+ Download it from 'http://alleg.sourceforge.net/wip.html' and
+ unzip it to the cross-compiler base directory. Make sure you
+ convert all text files to unix style (unzip -a) or the
+ pre-processor will croak. The DirectX package downloaded and
+ installed by the SDL script is not up to date: replace it with
+ the package from the Allegro site.
+
+ 3) Edit the file 'xmake.sh' in the root of your Allegro directory,
+ replacing XC_PATH, XPREFIX and INSTALL_BASE with the right
+ names. For example, if your compiler's base dir (the one with
+ bin, lib and include sub-folders) is /usr/i586-mingw32msvc, and
+ you have prefix-less binaries in /usr/i586-mingw32msvc/bin, you
+ would use:
XC_PATH=/usr/i586-mingw32msvc/bin
XPREFIX=
INSTALL_BASE=/usr/i586-mingw32msvc
- 2) Get the minimal DirectX 7 SDK for MingW32. (dx70_mgw.zip) Download it
- from 'http://alleg.sourceforge.net/wip.html' and unzip it to the
- cross-compiler base dir. Make sure you convert all text files to unix
- style (unzip -a) or the pre-processor will croak.
-
- 3) Then run './fix.sh mingw32 --dtou' (--dtou is only needed if your
- allegro directory has text files in DOS format, otherwise you can
- use --quick). You are now finished with all the preparations.
+ Note that the build-cross.sh script from SDL installs binaries
+ both with and without prefix, but some binaries (windres,
+ specifically) are installed only with prefix. If you installed
+ the crosscompiler in /opt/cross-tools using this script, you
+ would use:
+
+ XC_PATH=/opt/cross-tools/i386-mingw32msvc/bin:/opt/cross-tools/bin
+ XPREFIX=i386-mingw32msvc-
+ INSTALL_BASE=/opt/cross-tools/i386-mingw32msvc
+
+ 4) Run './fix.sh mingw32 --dtou' (--dtou is only needed if your
+ Allegro directory has text files in DOS format, otherwise you
+ can use --quick). If you are using a CVS version of Allegro,
+ run 'make depend' to generate build dependencies, then run
+ misc/fixdll.sh to generate the allegro.def file. You are now
+ finished with all the preparations.
- 4) You can now run './xmake.sh' to build the Allegro library and then run
- './xmake.sh install' as root to install Allegro. You can use
- 'xmake.sh' as you would use 'make' to compile any Allegro stuff.
- To build the documentation, use the native build process.
+ 5) You can now run './xmake.sh' to build the Allegro library and
+ then run './xmake.sh install' as root to install
+ Allegro. Afterwards, you can use 'xmake.sh' as you would use
+ 'make' to compile your own Allegro programs, or you can use the
+ 'cross-make.sh' and 'cross-configure.sh' scripts from the SDL
+ site. You must use ./xmake.sh to compile Allegro itself, though!
+
+ 6) To build the documentation, use the native build process. This
+ limitation will eventually be removed.