HowTo compile on Win32 with MinGW

From AMule Project FAQ
Revision as of 21:27, 17 July 2004 by 83.152.197.177 (Talk)

Jump to: navigation, search

by Madcat


List of things you need to compile aMule

Note: Some of these require manually moving includes/libs into the right directories.

Windows port of GNU C compiler [1]

Minimal GNU shell for Windows [2]

Developer toolkit for MSys (for CVS & co) [3]

LibIConv (required by gettext) [4]

GetText (for po files, autogen.sh etc) [5]

Curl library (compile w/o ssl support) [6]

zlib compression library [7]

Crypto++ encryption library [8]

Windows port of wxWidgets library [9]


Common guidelines, issues, solutions

Generally, compile wxMSW as static library. This avoids several linker issues, and provides you with static binary.

Link statically against zlib, crypto, curl and wxMSW to avoid distributing extranous dlls (and generally make life simpler). At this point, this requires manually hacking src/Makefile (after running configure) and changing the necessary -l*** places to paths to static libraries.

You need to modify wx/setup.h file by hand (after installing wx) and change wxCheckListBox to 0 (or, alternativly, configure wx with --without-checklistbox). Probably there's a better way around this, but I can't think of any right now.

Why don't distribute a compiled version?

oh please complie it - it will b so much easier....


Compiling with MinGWStudio

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

Install MinGWStudio, add Zlib, Curl and Crypto ++ compilled libs in The MinGWStudio tree.

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

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

Compiling with MakefileWIN32

With MinSyS and MinGW, u can use the shipped MakefileWIN32.

Just rename configWIN32.h to config.h, edit MakefileWIN32 to give it the path of your compiler, and type make -f MakefileWIN32