HowTo compile on Solaris
Compiling aMule/aMuleWeb on Solaris Express (11 beta) x86
- Install the pkg-get script from http://www.blastwave.org/pkg-get.php
- Use the pkg-get script to install some required libraries, which do not come with Solaris:
- autoconf
- automake
- flex (2.5.33 or newer)
- gd
- GNU gettext
These packages will install to /opt/csw tree
- Set your path like this:
PATH=/usr/local/bin:/opt/csw/bin:/usr/sfw/bin:/usr/bin
- Symlink the GNU utilities in /usr/sfw/bin to their "right" names (gar=ar, gas=as, gld=ld, gmake=make, ggrep=grep, gtar=tar, etc...) somewhere in your path. I sym-linked them to their same directory (/usr/sfw/bin).
- Get the latest wxGTK package from http://www.wxwidgets.org and compile it. Install it to /usr/local.
Note: blastwave has packages for wxGTK that are usually up to date, however they do not work with aMule because they are not compiled with Unicode support, which is required.
- Get the latest GeoIP source code from http://www.maxmind.com/app/c compile it and install it to /usr/local.
- Get the latest libUPnP source code from http://pupnp.sourceforge.net/ compile it and install it to /usr/local.
Hint: this configure line worked for me: ./configure CFLAGS="-DSPARC_SOLARIS" --disable-samples
- Get the latest cryptopp library from http://www.cryptopp.com/ and compile it. This guide assumes your crypto libs are in /temp/cryptopp54/cryptopp/
Note: This step was necessary for me, since the embedded cryptopp produced an unusable aMule binary file. However, this may be due to some error on my solaris install.
- Get the latest aMule CVS from http://amule.hirnriss.net and uncompress it somewhere.
- Set these environment variables:
CPPFLAGS='-I/usr/local/include -I /opt/csw/include -I/usr/sfw/include' LDFLAGS='-L/usr/local/lib -R/usr/local/lib -L/opt/csw/lib -R/opt/csw/lib -L/usr/sfw/lib -R/usr/sfw/lib' LD_LIBRARY_PATH=/usr/local/lib:/opt/csw/lib:/usr/sfw/lib:/usr/lib
- If you are compiling a SVN version of aMule, run the autogen.sh script. If not, ignore this step (you should first edit this file, and change the first line from #!/bin/sh to #!/bin/bash else, it will fail with an error.
- Configure aMule. I used these options, but feel free to remove the ones you don't need:
./configure --enable-webserver --enable-amule-daemon --enable-amulecmd --enable-amule-gui --enable-cas --enable-wxcas --enable-alc --enable-alcc --disable-embedded-crypto --with-crypto-prefix=/temp/cryptopp54/ --enable-geoip --enable-optimize --disable-debug
- Type gmake, press <ENTER> and hope for the best.
- If compilation went OK, install aMule with: gmake install.
- You can now run aMule!
- ENJOY!
This guide was used for compiling aMule and aMuleWeb on Solaris Express for x86. I have no idea if it will work or not on previous Solaris releases or on SPARC, but it should. Also, if you got aMule compiled using other Solaris than Solaris Express (11 beta), please tell me how you did, or if this guide worked for you or any extra things you had to do, etc.
Last, but not least, this guide works only for aMule versions (either SVN or release) starting March 7th/2005, no previous aMule version will compile on Solaris following this guide.
Thanks goes to all the aMule dev team, specially Kry, who helped me a lot, and ken for the CPPFLAGS tip.
Written by Skolnick on March 6/2005
Last modified by Skolnick on August 25/2007