Difference between revisions of "HowTo Compile In Slackware-it"

From AMule Project FAQ
Jump to: navigation, search
(Added stub for Italian translation)
 
m (Added note about minimum requirements and brief howto using SlackBuild)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
<center>
 
<center>
[[HowTo_Compile_In_Slackware|English]] | [[HowTo_Compile_In_Slackware-it|Italiano]]
+
[[HowTo_Compile_In_Slackware|English]] |  
| [[HowTo_Compile_In_Slackware-fr|Français]]
+
[[HowTo_Compile_In_Slackware-fr|Fran&ccedil;ais]] |  
 +
[[HowTo_Compile_In_Slackware-it|Italiano]]
 
</center>
 
</center>
<h1>Installing [[aMule]] 2.2.1 on [http://www.slackware.com Slackware] 12.0/12.1</h1>
 
  
'''NOTE''': you will need super-user (usually ''root'') access to complete [[aMule]] install/uninstallation/update, also consider using [http://asic-linux.com.mx/~izto/checkinstall checkinstall] installed to manage packages.
+
<h1>Installare [[aMule]] 2.2.* su [http://www.slackware.com Slackware] 12.*</h1>
  
<h2>Installation requirements</h2>
+
'''NOTA''': E' necessario impersonare il super-utente (generalmente ''root'') per completare la procedura di installazione/aggiornamento di [[aMule]]. Si consideri anche la possibilità di usare [http://asic-linux.com.mx/~izto/checkinstall checkinstall] per gestire i pacchetti.
  
In order to compile aMule 2.2.1 on Slackware 12.0/12.1 you need the following packages. Package version suggested are those provided for the Slackware 12.0/12.1:
+
<h2>Richieste di sistema</h2>
* geoip 1.4.4 (from http://slacky.eu)
+
* libupnp 1.6.6 (if you want to use the UPnP feature, get the tarball from http://pupnp.sf.net)
+
* cryptopp 5.5.2 (from http://slacky.eu)
+
* wxGTK 2.8.7 (http://www.wxwidgets.org or a precompiled package from http://packages.slackware.it)
+
* '''If using Slackware 12.0''' upgrade package gcc with >= 4.2.3-i486-1 (http://packages.slackware.it)
+
* '''If using Slackware 12.0''' upgrade package gcc-g++ with >= 4.2.3-i486-1 (http://packages.slackware.it)
+
* (''optional'') ccache-2.4-i486-1 package if you want to speedup compiling
+
  
 +
Per poter compilare aMule 2.2.* su una Slackware 12.* sono necessari i seguenti pacchetti. Le versioni suggerite sono quelle distribuite con Slackware 12.* o quelle testate:
 +
* geoip >= 1.4.4 (da http://slacky.eu)
 +
* libupnp 1.6.6 (Se si vuole utilizzare la funzionalità UPnP, scaricare il pacchetto dei sorgenti da http://pupnp.sf.net)
 +
* cryptopp 5.5.2 (da http://slacky.eu)
 +
* wxWidgets => 2.8.* (http://www.wxwidgets.org o un pacchetto precompilato da http://www.slacky.eu)
 +
* '''Se si usa Slackware 12.0''' aggiornare il pacchetto gcc with >= 4.2.3-i486-1 (http://packages.slackware.it)
 +
* '''Se si usa Slackware 12.0''' aggiornare il pacchetto gcc-g++ with >= 4.2.3-i486-1 (http://packages.slackware.it)
 +
* (''facoltativo'') il pacchetto ccache-2.4-i486-1 se si vuole velocizzare la compilazione
  
The minimum GCC version declared into the file docs/INSTALL appears to be obsolete as I encountered
+
La versione minima del GCC dichiarata nel file docs/INSTALL sembra essere obsoleta dal momento che ho riscontrato il seguente errore:
the following error:
+
  
 
<code>amule: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by amule)</code>
 
<code>amule: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by amule)</code>
  
 
+
Altri pacchetti - librerie di sistema - che sono necessarie: sono menzionate alla fine nel riassunto mostrato alla fine del comando ''configure'' di aMule.
Other packages - system libs rather strictly aMule related - that are needed: these are mentioned
+
at the end of the configure summary of aMule.
+
  
 
* regex system
 
* regex system
Line 34: Line 32:
 
* zlib 1.2.3
 
* zlib 1.2.3
  
<h2>aMule prepackaged binaries</h2>
+
<h2>Binari precompilati di aMule</h2>
Provided your system satisfies the above mentioned requirements, grab a pre-built [http://www.slackware.com Slackware] package from [http://www.linuxpackages.net/search_view.php?by=name&name=amule&ver= linuxpackages.net] and install it (as root) with:
+
Se il vostro sistema soddisfa i requisiti di aMule sopra menzionati, è possibile scaricare un pacchetto precompilato per [http://www.slackware.com Slackware] da [http://www.linuxpackages.net/search_view.php?by=name&name=amule&ver= linuxpackages.net] e installarlo (come root) con:
 
:''# installpkg aMule-x.y.z.tgz''
 
:''# installpkg aMule-x.y.z.tgz''
  
or if you simply need to upgrade the package:
+
o se si vuole semplicemente aggiornare il pacchetto:
  
 
:''# upgradepkg aMule-x.y.z.tgz''
 
:''# upgradepkg aMule-x.y.z.tgz''
  
Type ''amule'' in a shell to lauch or in [http://www.kde.org KDE] (similar in [http://www.gnome.org GNOME]) go to Kstart->Internet->aMule
+
Digitare ''amule'' al prompt della shell per lanciare aMule o eseguire la voce di menu Kstart->Internet->aMule creata in [http://www.kde.org KDE] o (voce simile in) [http://www.gnome.org GNOME]
  
If you want to ''remove'' aMule simply run:
+
Se si vuole ''rimuovere'' aMule eseguire:
  
 
:''# removepkg aMule-x.y.z.tgz''
 
:''# removepkg aMule-x.y.z.tgz''
  
<h2>Compiling aMule</h2>
+
<h2>Compilare aMule</h2>
  
* First install/upgrade the above mentioned packages. Then compile '''cryptopp''' (no special flags required) and '''wxGTK''' (if not already present) with the following flags:
+
* Per prima cosa installare/aggiornare i pacchetti sopra menzionati. Poi compilare la libreria '''cryptopp''' (nessun flag speciale da passare al ''configure'') e aMule con i seguenti parametri (per un'installazione completa):
  
:''$ ./configure --with-gtk --enable-unicode --enable-optimise''
+
:''$ ./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-ccache --enable-webserver''
 
:''$ make''
 
:''$ make''
:''$ su <insert password>''
+
:''$ su <inserire password>''
 
:''# make install''
 
:''# 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:
+
Meglio ancora, si può utilizzare checkintall per gestire i pacchetti Slackware o leggere come crearne su slackwiki.org. Checkintall può gestire pacchetti nel formato Slackware creati sul proprio host, il che rende più semplice l'aggiornamento o la rimozione di spazzatura generata da precedenti installazioni. Se le istruzioni su slackwiki.org non sono proprio alla vostra portata, per il momento utilizzate solo checkinstall:
  
: become root
+
: impersonare root
  
 
: ''$ su -''
 
: ''$ su -''
  
: then just call
+
: eseguire semplicemente
  
 
: ''# checkinstall''
 
: ''# checkinstall''
  
: Just answer the questions and you're done.
+
: Rispondere alle domande ed avete fatto.
  
<h3>Installing [[wxBase]] (Optional)</h3>
 
  
If you downloaded [[wxWidgets|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.
+
<h3>Installare [[wxBase]] (facoltativo)</h3>
  
Download [[wxBase]] sources (.tar.gz packages) from http://www.amule-project.net or http://www.amule.org and do the following:
+
Se avete scaricato una versione di [[wxWidgets|wxGTK]] meno recente della 2.5 e volete usare [[aMule]] anche da linea di comando o con altre interfacce (esempio [[aMuleCMD]], [[aMuleWeb]], [[aMuled]], ecc.), si deve procedere all'installazione delle librerie [[wxBase]]. In ogni altro caso, non ce n'è bisogno.
 +
 
 +
Scaricare i sorgenti di [[wxBase]] (pacchetto .tar.gz) da http://www.amule-project.net o http://www.amule.org ed eseguire quanto segue:
  
 
:''$ tar -xzvf wxBase*''
 
:''$ tar -xzvf wxBase*''
Line 79: Line 78:
 
:''$ ./configure''
 
:''$ ./configure''
 
:''$ make''
 
:''$ make''
:''$ su <insert password>''
+
:''$ su <inserire password>''
 
:''# make install''
 
:''# make install''
  
* Then compile '''aMule'''. Run the "configure" with the following parameters for a complete install:
+
* Compilare '''aMule'''. Eseguire il ''configure'' con i parametri specificati in precedenza:
  
:''$ ./configure --with-denoise-level=3 <br>
+
* Se si è soddisfatti del riassunto mostrato alla fine, eseguire:
:--enable-optimize <br>
+
:--enable-verbose <br>
+
:--enable-geoip <br>
+
:--enable-wxcas <br>
+
:--enable-amule-gui <br>
+
:--enable-amulecmd <br>
+
:--enable-amule-daemon <br>
+
:--enable-alc <br>
+
:--enable-alcc <br>
+
:--enable-cas <br>
+
:--disable-debug <br>
+
:--enable-webserver <br>
+
:--enable-ccache (''optional, compiling speedup'')<br>
+
:--prefix=/your/install/path (''optional, if different than /usr/local'')''
+
 
+
* If you are satisfied of the summary that is shown, run:
+
  
 
:$ make
 
:$ 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:
+
:Se si dispone di una CPU multi-core, si può velocizzare la compilazione aggiungendo il parametro "-j" secondo il numero di CPU logiche/fisiche rilevate sul vostro sistema, ad esempio su un sistema dual-core si può aggiungere:
  
 
:$ make -j 2  
 
:$ make -j 2  
 
 
* If no error arise, you can run (as root):
+
* Se non appare alcun errore, si può eseguire (come root):
  
 
:<code># make install</code>
 
:<code># make install</code>
 
 
* Finally run the "amule" executable:
+
* Infine eseguire "amule":
  
 
:$ amule &
 
:$ amule &
  
<h2>Building a Slackware package</h2>
+
<h2>Compilare un pacchetto Slackware</h2>
  
The steps I followed to build a package change just a little.
+
I passi che ho seguito differiscono di poco da quanto sopra esposto.
  
* 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:
+
* Anzitutto ho installato aMule in un'altra locazione - per meglio controllare il risultato - aggiungendo il seguente parametro allo script di ''configure'':
 
:--prefix=/home/''$(whoami)''/tmp/amule/usr
 
:--prefix=/home/''$(whoami)''/tmp/amule/usr
 
 
:Remember to append "/usr" at the end of the path.
+
:Ricordarsi di aggiungere "/usr" alla fine del path.
  
* After installing ("make && make install"), strip down all the binaries with the following command in order to squeeze package size (a lot!):
+
* Dopo aver installato aMule ("make && make install"), ridurre la dimensione dei binari con il seguente comando, per poter contenere (parecchio!) la dimensione del pacchetto complessivo:
 
:$ cd /home/$(whoami)/tmp/amule/usr/bin
 
:$ cd /home/$(whoami)/tmp/amule/usr/bin
 
:$ for i in alc alcc amule amulecmd amuled amulegui amuleweb cas ed2k wxcas; do strip $i; done
 
:$ for i in alc alcc amule amulecmd amuled amulegui amuleweb cas ed2k wxcas; do strip $i; done
Line 132: Line 115:
 
:$ cd 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).
+
:In questa directory creare i file "''slack-required''" e "''slack-desc''" secondo le linee guida SlackBuild. Io sono pigro e li ho semplicemente copiati da un precedente pacchetto recente e ho soltato modificato le parti non più valide.
  
* Then create the package:
+
* Creare il pacchetto:
  
 
:<code>$ cd ..</code>
 
:<code>$ cd ..</code>
Line 141: Line 124:
 
:<code>$ makepkg aMule-x.y.z.tgz</code>
 
:<code>$ makepkg aMule-x.y.z.tgz</code>
  
* Test your build and then notify the forum posting the ed2k link (set to ''release'' priority the file) ;-)
+
* Verificare la bontà del vostro pacchetto e notificarne l'esistenza nel forum, includendo il link ed2k (impostare a priorità ''release'' il file) ;-)
 +
 
 +
<h4>Compilazione con uno script SlackBuild</h4>
 +
 
 +
Un altro metodo per compilazione aMule è attraverso uno script [http://slackbuilds.org SlackBuild]. Si possono scaricare dal [http://slackbuilds.org/repository/12.2/network/aMule repository] o [http://slackbuilds.org/guidelines crearne uno] se non disponibile.
 +
 
 +
Una volta che lo script compresso è stato scaricato, va scompattato in una directory. Copiare nella stessa directory il pacchetto con i sorgenti e modificare il file ''aMule.SlackBuild'' secondo le proprie necessità (in particolare si può configurare le opzioni di compilazione e la versione di aMule che si sta per compilare).
 +
 
 +
Da utente ''root'' si può poi eseguire lo script:
 +
 
 +
:''# sh aMule.SlackBuild
 +
 
 +
Quando lo script finisce avremo il pacchetto nella directory desiderata. E tutto!
  
<h2>Final note</h2>
+
<h2>Note finali</h2>
  
Enjoy the hard work [[aMule]] [[AMule_devs|developers]] have done and continue to do!
+
Godetevi il frutto del duro lavoro che viene svolto continuamente dal team [[aMule]] [[AMule_devs|developers]]!
  
Catch me on [[IRC]] at [irc://irc.freenode.net irc.freenode.com] channel [irc://irc.freenode.net/amule #amule] nick '''servnov'''.
+
Potete contattarmi in [[IRC]] sul canale [irc://irc.freenode.net irc.freenode.com] [irc://irc.freenode.net/amule #amule] cercandomi col nick '''servnov'''.
  
Or post your questions on the [http://forum.amule.org forum].
+
Oppure ponete le vostre domande sul forum presso [http://forum.amule.org forum].

Latest revision as of 20:42, 5 January 2009

English | Français | Italiano

Installare aMule 2.2.* su Slackware 12.*

NOTA: E' necessario impersonare il super-utente (generalmente root) per completare la procedura di installazione/aggiornamento di aMule. Si consideri anche la possibilità di usare checkinstall per gestire i pacchetti.

Richieste di sistema

Per poter compilare aMule 2.2.* su una Slackware 12.* sono necessari i seguenti pacchetti. Le versioni suggerite sono quelle distribuite con Slackware 12.* o quelle testate:

La versione minima del GCC dichiarata nel file docs/INSTALL sembra essere obsoleta dal momento che ho riscontrato il seguente errore:

amule: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by amule)

Altri pacchetti - librerie di sistema - che sono necessarie: sono menzionate alla fine nel riassunto mostrato alla fine del comando configure di aMule.

  • regex system
  • libintl system
  • libpng 1.2.18
  • libgd 2.0.35
  • zlib 1.2.3

Binari precompilati di aMule

Se il vostro sistema soddisfa i requisiti di aMule sopra menzionati, è possibile scaricare un pacchetto precompilato per Slackware da linuxpackages.net e installarlo (come root) con:

# installpkg aMule-x.y.z.tgz

o se si vuole semplicemente aggiornare il pacchetto:

# upgradepkg aMule-x.y.z.tgz

Digitare amule al prompt della shell per lanciare aMule o eseguire la voce di menu Kstart->Internet->aMule creata in KDE o (voce simile in) GNOME

Se si vuole rimuovere aMule eseguire:

# removepkg aMule-x.y.z.tgz

Compilare aMule

  • Per prima cosa installare/aggiornare i pacchetti sopra menzionati. Poi compilare la libreria cryptopp (nessun flag speciale da passare al configure) e aMule con i seguenti parametri (per un'installazione completa):
$ ./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-ccache --enable-webserver
$ make
$ su <inserire password>
# make install

Meglio ancora, si può utilizzare checkintall per gestire i pacchetti Slackware o leggere come crearne su slackwiki.org. Checkintall può gestire pacchetti nel formato Slackware creati sul proprio host, il che rende più semplice l'aggiornamento o la rimozione di spazzatura generata da precedenti installazioni. Se le istruzioni su slackwiki.org non sono proprio alla vostra portata, per il momento utilizzate solo checkinstall:

impersonare root
$ su -
eseguire semplicemente
# checkinstall
Rispondere alle domande ed avete fatto.


Installare wxBase (facoltativo)

Se avete scaricato una versione di wxGTK meno recente della 2.5 e volete usare aMule anche da linea di comando o con altre interfacce (esempio aMuleCMD, aMuleWeb, aMuled, ecc.), si deve procedere all'installazione delle librerie wxBase. In ogni altro caso, non ce n'è bisogno.

Scaricare i sorgenti di wxBase (pacchetto .tar.gz) da http://www.amule-project.net o http://www.amule.org ed eseguire quanto segue:

$ tar -xzvf wxBase*
$ cd wxBase*
$ ./configure
$ make
$ su <inserire password>
# make install
  • Compilare aMule. Eseguire il configure con i parametri specificati in precedenza:
  • Se si è soddisfatti del riassunto mostrato alla fine, eseguire:
$ make
Se si dispone di una CPU multi-core, si può velocizzare la compilazione aggiungendo il parametro "-j" secondo il numero di CPU logiche/fisiche rilevate sul vostro sistema, ad esempio su un sistema dual-core si può aggiungere:
$ make -j 2
  • Se non appare alcun errore, si può eseguire (come root):
# make install
  • Infine eseguire "amule":
$ amule &

Compilare un pacchetto Slackware

I passi che ho seguito differiscono di poco da quanto sopra esposto.

  • Anzitutto ho installato aMule in un'altra locazione - per meglio controllare il risultato - aggiungendo il seguente parametro allo script di configure:
--prefix=/home/$(whoami)/tmp/amule/usr
Ricordarsi di aggiungere "/usr" alla fine del path.
  • Dopo aver installato aMule ("make && make install"), ridurre la dimensione dei binari con il seguente comando, per poter contenere (parecchio!) la dimensione del pacchetto complessivo:
$ 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
In questa directory creare i file "slack-required" e "slack-desc" secondo le linee guida SlackBuild. Io sono pigro e li ho semplicemente copiati da un precedente pacchetto recente e ho soltato modificato le parti non più valide.
  • Creare il pacchetto:
$ cd ..
$ ls
install usr
$ makepkg aMule-x.y.z.tgz
  • Verificare la bontà del vostro pacchetto e notificarne l'esistenza nel forum, includendo il link ed2k (impostare a priorità release il file) ;-)

Compilazione con uno script SlackBuild

Un altro metodo per compilazione aMule è attraverso uno script SlackBuild. Si possono scaricare dal repository o crearne uno se non disponibile.

Una volta che lo script compresso è stato scaricato, va scompattato in una directory. Copiare nella stessa directory il pacchetto con i sorgenti e modificare il file aMule.SlackBuild secondo le proprie necessità (in particolare si può configurare le opzioni di compilazione e la versione di aMule che si sta per compilare).

Da utente root si può poi eseguire lo script:

# sh aMule.SlackBuild

Quando lo script finisce avremo il pacchetto nella directory desiderata. E tutto!

Note finali

Godetevi il frutto del duro lavoro che viene svolto continuamente dal team aMule developers!

Potete contattarmi in IRC sul canale irc.freenode.com #amule cercandomi col nick servnov.

Oppure ponete le vostre domande sul forum presso forum.