Difference between revisions of "HowTo compile on Win32 with MinGW"

From AMule Project FAQ
Jump to: navigation, search
(Some updates and fixing the zlib detection)
Line 11: Line 11:
 
'''Note:''' Some of these require manually moving includes and libraries into their correct directories.
 
'''Note:''' Some of these require manually moving includes and libraries into their correct directories.
  
[http://www.microsoft.com/windows Windows] port of [http://gcc.gnu.org GNU C compiler] -> [http://prdownloads.sf.net/mingw/MinGW-3.1.0-1.exe?download Download]
+
[http://www.microsoft.com/windows Windows] port of [http://gcc.gnu.org GNU C compiler] -> [http://prdownloads.sourceforge.net/mingw/MinGW-4.1.1.exe?download Download]
  
 
Minimal [http://www.gnu.org GNU] shell for [http://www.microsoft.com/windows Windows] -> [http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download Download]
 
Minimal [http://www.gnu.org GNU] shell for [http://www.microsoft.com/windows Windows] -> [http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download Download]
Line 24: Line 24:
  
 
[http://www.zlib.org zlib] compression library ->
 
[http://www.zlib.org zlib] compression library ->
[http://www.zlib.net/zlib-1.2.2.tar.gz Download]
+
[http://www.zlib.net/zlib-1.2.3.tar.gz Download]
  
 
[http://www.microsoft.com/windows Windows] port of [[wxWidgets]] library ->
 
[http://www.microsoft.com/windows Windows] port of [[wxWidgets]] library ->
[http://prdownloads.sourceforge.net/wxwindows/wxMSW-2.6.0.zip Download]
+
[http://prdownloads.sourceforge.net/wxwindows/wxMSW-2.6.1.zip Download]
  
 
== Common guidelines, issues, solutions ==
 
== Common guidelines, issues, solutions ==
Line 33: Line 33:
 
When compiling [[wxWidgets]], you should make use of the following configure flags:
 
When compiling [[wxWidgets]], you should make use of the following configure flags:
 
''--disable-shared --without-checklistbox''
 
''--disable-shared --without-checklistbox''
 +
 +
Compile ''[http://www.zlib.org zlib]'' with ''--prefix=/mingw'' or zlib detection in aMule will not work.
  
 
Link statically against ''[http://www.zlib.org zlib]'' to avoid distributing extranous DLLs (and generally make life simpler).  
 
Link statically against ''[http://www.zlib.org zlib]'' to avoid distributing extranous DLLs (and generally make life simpler).  
Line 38: Line 40:
 
== Compilation ==
 
== Compilation ==
  
The compilation itself is actually just a matter of following the usual method: ''./configure && make''
+
The compilation itself is actually just a matter of following the usual method: ''./configure && make''. Use your favorite flags on ./configure.
 
+
However, [http://www.zlib.org zlib] detection might fail. If that's the case, you need to add ''--with-zlib=/local/'' to your configure flags.
+
  
 
==  Compiling with [http://www.parinya.ca/mingwstudio.html MinGW Studio]  ==
 
==  Compiling with [http://www.parinya.ca/mingwstudio.html MinGW Studio]  ==

Revision as of 05:01, 23 July 2005

Originally by Madcat

English | Deutsche

This wiki page only supports the latest CVS version of aMule.

Requirements for compiling aMule

Note: Some of these require manually moving includes and libraries into their correct directories.

Windows port of GNU C compiler -> Download

Minimal GNU shell for Windows -> Download

Developer toolkit for MSys (for CVS & co) -> Download

LibIConv (required by gettext) -> Download

GetText (for po files, autogen.sh, etc) -> Download

zlib compression library -> Download

Windows port of wxWidgets library -> Download

Common guidelines, issues, solutions

When compiling wxWidgets, you should make use of the following configure flags: --disable-shared --without-checklistbox

Compile zlib with --prefix=/mingw or zlib detection in aMule will not work.

Link statically against zlib to avoid distributing extranous DLLs (and generally make life simpler).

Compilation

The compilation itself is actually just a matter of following the usual method: ./configure && make. Use your favorite flags on ./configure.

Compiling with MinGW Studio

NOTE: The compilation with MinGW Studio is deprecated right now and currently does not function. It might function again in the future.

As of 2004/07/17, you can find, in CVS, the file amule.msp which is the project file relative to the MinGW Studio IDE (Free and under GPL at http://www.parinya.ca/ and shipped with precompiled wxMSW).

Install MinGW Studio, add Zlib and Curl compiled libs in The MinGW Studio tree.

Then, open amule.msp with MinGW Studio, press F7, and aMule "should" be compiled :)

Yes, I know, "compile" is not the same as "work" ... But it is a great begining

Windows Installer

For those of you that don't want to compile aMule from source, there is also the option of the aMule Windows Installer.