Difference between revisions of "HowTo compile on Solaris"

From AMule Project FAQ
Jump to: navigation, search
(Language Link and Typo)
Line 1: Line 1:
 
<center>'''English''' | [[HowTo_compile_on_Solaris-de|Deutsch]]</center>
 
<center>'''English''' | [[HowTo_compile_on_Solaris-de|Deutsch]]</center>
  
'''Compiling [[aMule]]/[[aMuleWeb]] on [http://www.sun.com/software/solaris/10 Solaris 10] x86'''
+
'''Compiling [[aMule]]/[[aMuleWeb]] on [http://developers.sun.com/sxde/ Solaris Express (11 beta)] x86'''
  
 
*Install the [http://www.blastwave.org/pkg-get.php pkg-get] script from http://www.blastwave.org/pkg-get.php
 
*Install the [http://www.blastwave.org/pkg-get.php pkg-get] script from http://www.blastwave.org/pkg-get.php
Line 8: Line 8:
 
**autoconf
 
**autoconf
 
**automake
 
**automake
 +
**flex (2.5.33 or newer)
 
**gd
 
**gd
**gettext
+
**GNU gettext
**gtk/gtk2
+
**libpng
+
 
These packages will install to ''/opt/csw'' tree
 
These packages will install to ''/opt/csw'' tree
  
Line 17: Line 16:
 
   PATH=/usr/local/bin:/opt/csw/bin:/usr/sfw/bin:/usr/bin
 
   PATH=/usr/local/bin:/opt/csw/bin:/usr/sfw/bin:/usr/bin
  
*Simlink the [http://www.gnu.org 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'').
+
*Symlink the [http://www.gnu.org 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'').
  
*Now, get the latest [[wxGTK]] package from http://www.wxwidgets.org and compile it. Install it to ''/usr/local''. I have not tried compiling it with [http://www.unicode.org Unicode] support, nor against [http://gtk.org GTK2], so basically this is untested. But should work.
+
*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 I have not tried them with aMule. If you want, you could try them however. Do not forget to isntall the development files also.
 +
                                     
 +
*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 and unusable aMule binary file. However, this may be due to some error on my [http://www.sun.com/software/solaris solaris] install.
  
 
*Get the latest [[aMule CVS]] from http://amule.hirnriss.net and uncompress it somewhere.
 
*Get the latest [[aMule CVS]] from http://amule.hirnriss.net and uncompress it somewhere.
  
*Set these two environment wariables:
+
*Get the latest
   CPPFLAGS='-I /opt/csw/include'
+
 
 +
*Set these environment wariables:
 +
   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
 
   LD_LIBRARY_PATH=/usr/local/lib:/opt/csw/lib:/usr/sfw/lib:/usr/lib
  
*Configure [[aMule]] like this:
+
*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 --enable-webserver
+
  
*Type ''make'', press <ENTER> and hope for the best.
+
*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
  
*If compilation went OK, you can now run [[aMule]]!
+
*Type ''gmake'', press <ENTER> and hope for the best.
   ./src/amule
+
 
 +
*If compilation went OK, install aMule with: ''gmake install''.
 +
 +
*You can now run [[aMule]]!
 +
    
 
*ENJOY!
 
*ENJOY!
  
This guide was used for compiling [[aMule]] and [[aMuleWeb]] on [http://www.sun.com/software/solaris/10 Solaris 10] FCS, I have no idea if it will work or not on previous/later [http://www.sun.com/software/solaris Solaris] releases, but it should. Also, if you got [[aMule]] compiled on other [http://www.sun.com/software/solaris Solaris] than [http://www.sun.com/software/solaris/10 10], 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 CVS]] versions starting March 7th/2005, no previous [[aMule]] version will compile on [http://www.sun.com/software/solaris Solaris] following this guide.
+
This guide was used for compiling [[aMule]] and [[aMuleWeb]] on [http://developers.sun.com/sxde/ Solaris Express] for x86. I have no idea if it will work or not on previous [http://www.sun.com/software/solaris Solaris] releases or on [http://www.sun.com/processors/ SPARC], but it should. Also, if you got [[aMule]] compiled using other [http://www.sun.com/software/solaris Solaris] than [http://developers.sun.com/sxde/ 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.
  
Witten by [[User:Skolnick|Skolnick]] on March 6/2005
+
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 [http://www.sun.com/software/solaris Solaris] following this guide.
  
 
Thanks goes to all the [[aMule devs|aMule dev team]], specially [[User:Kry|Kry]], who helped me a lot, and [[User:ken|ken]] for the ''CPPFLAGS'' tip.
 
Thanks goes to all the [[aMule devs|aMule dev team]], specially [[User:Kry|Kry]], who helped me a lot, and [[User:ken|ken]] for the ''CPPFLAGS'' tip.
 +
 +
 +
 +
Written by [[User:Skolnick|Skolnick]] on March 6/2005
 +
 +
Last modified by [[User:Skolnick|Skolnick]] on August 25/2007

Revision as of 22:13, 25 August 2007

English | Deutsch

Compiling aMule/aMuleWeb on Solaris Express (11 beta) x86

  • 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).

Note: blastwave has packages for wxGTK that are usually up to date, however I have not tried them with aMule. If you want, you could try them however. Do not forget to isntall the development files also.

 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 and unusable aMule binary file. However, this may be due to some error on my solaris install.

  • Get the latest
  • Set these environment wariables:
 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.
  • 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