HowTo Compile In Slackware-fr
Contents
Installer aMule 2.2.1 sur Slackware 12.0/12.1
NOTE: vous devez être l'utilisateur admin (généralement root) pour installer/désinstaller/mettre à jour aMule, en plus vous pouvez utiliser checkinstall pour organiser les progiciels.
Configuration recommandée
Pour compiler aMule 2.2.1 sur Slackware 12.0/12.1 vous nécessitez les progiciels suivants. Les versions conséillés sont celles qui sont avec Slackware 12.0/12.1:
- geoip 1.4.4 (de http://slacky.eu)
- libupnp 1.6.6 (si vous voulez utiliser la fonctionnalité UPnP, télécharger le tarball de http://pupnp.sf.net)
- cryptopp 5.5.2 (de http://slacky.eu)
- wxGTK 2.8.7 (http://www.wxwidgets.org ou un progiciel de http://packages.slackware.it)
- Si vous utilisez Slackware 12.0 mettre à jour le progiciel gcc with >= 4.2.3-i486-1 (http://packages.slackware.it)
- Si vous utilisez Slackware 12.0 mettre à jour le progiciel gcc-g++ with >= 4.2.3-i486-1 (http://packages.slackware.it)
- (facultatif) ccache-2.4-i486-1 si vous voulez accélérer la compilation
La version minimale du GCC déclarée dans la fiche docs/INSTALL semble dépréciée puisque j'ai rencontré cette erreur:
amule: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by amule)
Autres progiciels - répertoires du système - qui sont nécéssaires: ces sont montrés à la fin du sommaire du configure de aMule:
- regex system
- libintl system
- libpng 1.2.18
- libgd 2.0.35
- zlib 1.2.3
aMule progiciels
Si vôtre système est conforme aux conditions ci-dessus, télécharger le progiciel Slackware de linuxpackages.net et installez (comme root) avec:
- # installpkg aMule-x.y.z.tgz
ou simplement, si vous voulez mettre à jour le progiciel:
- # upgradepkg aMule-x.y.z.tgz
Tapez amule dans le shell pour démarrer ou dans KDE (et d'une façon similaire dans GNOME) démarrez Kstart->Internet->aMule
Si vous voulez désinstaller aMule exécutez:
- # removepkg aMule-x.y.z.tgz
Compiling aMule
- First install/upgrade the above mentioned packages. Then compile cryptopp (no special flags required) and wxGTK (if not already present) with the following flags:
- $ ./configure --with-gtk --enable-unicode --enable-optimise
- $ make
- $ su <insert password>
- # make install
Even better, you can use checkinstall or read up on how to properly make Slackware packages on slackwiki.org. Checkinstall and selfmade packages can be handled by Slackware's package tools, which make upgrading and removing old cruft from previous installs a breeze. If the Slackwiki howto is a little too much for, stick to checkinstall for the moment:
- become root
- $ su -
- then just call
- # checkinstall
- Just answer the questions and you're done.
Installing wxBase (Optional)
If you downloaded wxGTK earlier than version 2.5 and you are planning to use aMule with command line interface (such as aMuleCMD, aMuleWeb, aMuled, etc), then you you should install wxBase. In any other case, there's no need at all.
Download wxBase sources (.tar.gz packages) from http://www.amule-project.net or http://www.amule.org and do the following:
- $ tar -xzvf wxBase*
- $ cd wxBase*
- $ ./configure
- $ make
- $ su <insert password>
- # make install
- Then compile aMule. Run the "configure" with the following parameters for a complete install:
- $ ./configure --with-denoise-level=3
- --enable-optimize
- --enable-verbose
- --enable-geoip
- --enable-wxcas
- --enable-amule-gui
- --enable-amulecmd
- --enable-amule-daemon
- --enable-alc
- --enable-alcc
- --enable-cas
- --disable-debug
- --enable-webserver
- --enable-ccache (optional, compiling speedup)
- --prefix=/your/install/path (optional, if different than /usr/local)
- If you are satisfied of the summary that is shown, run:
- $ make
- If you have a multi-core CPU you can speedup the compilation adding the parameter "-j" according to the number of logical/phisical CPUs detected on your system, example for a dual-core CPU:
- $ make -j 2
- If no error arise, you can run (as root):
# make install
- Finally run the "amule" executable:
- $ amule &
Building a Slackware package
The steps I followed to build a package change just a little.
- First I have installed amule in a different, dedicated path in order to check exactly the results, e.g. adding the following parameter to the configure script:
- --prefix=/home/$(whoami)/tmp/amule/usr
- Remember to append "/usr" at the end of the path.
- After installing ("make && make install"), strip down all the binaries with the following command in order to squeeze package size (a lot!):
- $ cd /home/$(whoami)/tmp/amule/usr/bin
- $ for i in alc alcc amule amulecmd amuled amulegui amuleweb cas ed2k wxcas; do strip $i; done
- $ cd ../..
- $ md install
- $ cd install
- Here edit "slack-required" and "slack-desc" files according to SlackBuild guidelines. I was lazy and just copied them from another recent Slackware aMule package (changing the relevant requirements).
- Then create the package:
$ cd ..
$ ls
install usr
$ makepkg aMule-x.y.z.tgz
- Test your build and then notify the forum posting the ed2k link (set to release priority the file) ;-)
Final note
Enjoy the hard work aMule developers have done and continue to do!
Catch me on IRC at irc.freenode.com channel #amule nick servnov.
Or post your questions on the forum.