HowTo Compile In Ubuntu
This page describes how to compile aMule and its required libraries CryptoPP and wxWidgets on Ubuntu 9.04. We will install everything in our home directory in this example. Make a directory where you want to build and install aMule (we will use
/home/me/amule and I'll call it
You shouldn't try to build CryptoPP on Ubuntu from source. The original CryptoPP headers are broken and cause a zillion warnings later building aMule. The Ubuntu developers provide fixed headers so you should use the lib that comes with it. However you should also install the cryptest tool and verify if CryptoPP really runs on your machine:
sudo apt-get install libcrypto++-utils
If you still want to build it, download CryptoPP 5.6.0. Unzip it to
/home/me/amule/cryptopp . Run
make. Then run
./cryptest.exe v to validate it (it must print
All tests passed!).
amule/wx. Download latest stable wxGTK (2.8.10 writing this). Wx 2.9 is still experimental, if you feel adventurous you can try it (but only with aMule 2.3).
Extract it with
tar xzf wxGTK-2.8.10.tar.gz. Make and cd to wx/build and run
../wxGTK-2.8.10/configure --prefix=/home/me/amule/wx --with-gtk --enable-unicode --enable-optimise --disable-shared
make install .
Note: wxGTK 2.8.10 needs a patch for Ubuntu Karmic, see here.
You can also simply install libwxgtk2.8-dev .
./configure --prefix=/home/me/amule/bin --enable-debug --enable-optimize --with-denoise-level=3 --enable-upnp --enable-geoip --enable-nls --enable-amule-gui --enable-amule-daemon --enable-amulecmd --enable-webserver --enable-alcc -enable-alc --enable-cas --enable-wxcas --enable-mmap --with-wx-config=/home/me/amule/wx/bin/wx-config --with-crypto-prefix=/home/me/amule/cryptopp
Leave out the --with-crypto-prefix when using the Ubuntu CryptoPP. Also leave out the --enable-upnp if you don't need UPnP (that is if you are able to set up port forwarding in your router).
Now just run make and that's it! You can start aMule with command "/home/me/amule/bin/amule".
Build from repository export
If your aMule source doesn't come with a configure script you have a direct export from the development repository. To set up configure you need to run ./autogen.sh first. You need additional packages: