Chi possiede un processore a 64bit, non può vantarsi dell’utilizzo delle librerie tcl/tk 8.5, che ancora non sono state pacchettizzate. Perciò ce le compiliamo da soli cosi da avere anche alcuni vantaggi, tra cui:

1) Compilando la versione svn avremo un aMSN aggiornato all’ultima modifica di codice che hanno fatto gli sviluppatori prima di coricarsi questa notte :P

2) Avremo anche su architettura a 64bit il supporto delle tcl/tk 8.5, e del multi-threading che vi cambierà nettamente la vita soprattutto se i vostri contatti (come nel 90% dei casi) fanno un uso smodato di emoticons animate

3)Potremo usufruire dell’antialiasing sul testo

Detto questo passiamo subito al tutorial che vi spiegherà passo passo i procedimenti da fare ;)

Iniziamo, prima di tutto, a recuperare i sorgenti di aMSN e delle librerie tcl e tk.
I primi li possiamo trovare qui, mentre le tcl e le tk qui e qui.

Prima di iniziare verifichiamo anche che nel nostro sources.list ci siano i repository universe e multiverse abilitati. Apriamo il file

sudo nano /etc/apt/sources.list

Ora controlliamo che i repository seguenti siano presenti all’interno del file e che non abbiano il cancelletto davanti

deb http://it.archive.ubuntu.com/ubuntu/ feisty main restricted multiverse
deb http://it.archive.ubuntu.com/ubuntu/ feisty universe

Se presentano un cancelletto davanti, rimuovetelo. Se invece non sono proprio presenti, aggiungeteli a mano. Quindi aggiorniamo la nostra lista pacchetti

sudo apt-get update

Fatto questo, autentichiamoci subito come root, visto che praticamente quasi tutti i comandi andranno dati con i privilegi di superuser

sudo -i

Ora che siamo onnipotenti, e visto che non siamo masochisti, invece di verificare le dipendenze una per una, installiamo i pacchetti che le risolveranno tutte per noi con un solo comando

apt-get install tcl8.4 tk8.4 tcltls tcl8.4-dev tk8.4-dev libxft-dev libpng12-dev libjpeg62-dev g++

Bene. Ora che abbiamo i sorgenti e tutte le dipendenze sono già state risolte, iniziamo con la compilazione delle librerie. Portiamoci nella cartella in cui abbiamo scaricato i sorgenti poco fa e decomprimiamo gli archivi

gunzip tcl8.5a6-src.tar.gz
tar -xvf tcl8.5a6-src.tar
gunzip tk8.5a6-src.tar.gz
tar -xvf tk8.5a6-src.tar
gunzip amsn_dev.tar.gz
tar -xvf amsn_dev.tar

Portiamoci nella cartella dei sorgenti delle tcl e iniziamo la configurazione.

cd tcl8.5a6/unix
./configure –enable-threads –enable-64bit –prefix=/usr

Il flag –enable-threads ci serve per abilitare il multi-threads, il flag –enable-64bit ovviamente per compilare i sorgenti per architetture a 64bit e il flag –prefix=/usr ci serve per mantenere la struttura tipica di ubuntu, mettendo le librerie al posto giusto.

ora passiamo alla compilazione

make
make install

Ora le librerie tcl sono a posto. Possiamo passare alle tk. Torniamo nella cartella in cui abbiamo scaricato gli archivi e portiamoci nella cartella dei sorgenti delle tk

cd tk8.5a6/unix
./configure –enable-threads –enable-64bit –enable-xft –prefix=/usr

I flag sono più o meno gli stessi, quindi non mi dilungherò molto e passo subito alla compilazione

make
make install

Ora che abbiamo finito di compilare le librerie, dobbiamo aggiustare i link simbolici di sistema in modo da utilizzare la nuove librerie 8.5 invece delle 8.4 precedentemente installate.
Portiamoci nella cartella /etc/alternatives e modifichiamo 2 link

cd /etc/alternatives
rm wish tclsh
ln -s /usr/bin/wish8.5 wish
ln -s /usr/bin/tclsh8.5 tclsh

Ora spostiamoci in /usr/lib e ripetiamo lo stesso procedimento con tutte le librerie che abbiamo aggiornato

cd /usr/lib
ln -s tcl8.5 tcl
ln -s tk8.5 tk
ln -s libtk8.5.so libtk.so
ln -s libtcl8.5.so libtcl.so
ln -s libtclstub8.5.a libtclstub.a
ln -s libtkstub8.5.a libtkstub.a

sistemati tutti i link simbolici aggiorniamo il sistema affinché utilizzi i nuovi collegamenti dinamici

ldconfig

Con le librerie abbiamo finito. Ora possiamo portarci ancora una volta nella cartella in cui avete scaricato gli archivi e portarci nella cartella dei sorgenti di aMSN e compilando i sorgenti.

cd msn
./configure –prefix=/usr
make
make install

Siamo quasi alla fine. Apriamo il file pkgIndex.tcl

nano /usr/lib/tls1.50/pkgIndex.tcl

e modifichiamo la riga

package ifneeded tls 1.5…

con

package ifneeded tls 1.50…

Salvate e chiudete. La compilazione è terminata. Come ultimo passo rimuoviamo tutti i pacchetti che non ci servono più

apt-get remove –purge libxft-dev libpng12-dev libjpeg62-dev tcl8.4-dev tk8.4-dev
apt-get autoremove –purge

Impresa completata! Ora siete pronti a messaggiare con tutti i vostri contatti MSN al meglio ;)

Prima di salutarvi vorrei ringraziare in particolare Mitsuhashi che mi ha fornito la guida originale, che è stata fondamentale per la stesura di questa. Mi raccomando Mitsu….posta altre guide :D