Ieri sera è stata rilasciata la distribuzione 11.10 di Ubuntu. Come trattenersi dall'installarla sul proprio personal computer? Ma ecco i primi problemi con CERN ROOT. Il primo è a livello di compilazione. Infatti, seguendo il post
UBUNTU 11.04 | Installare CERN ROOT, giunti al comando:
./configure linuxx8664gcc
otterremo un bel messaggio di errore. Per risolvere il problema dovremo sostituire quest'ultimo comando con il seguente:
./configure linuxx8664gcc --with-x11-libdir=/usr/lib/x86_64-linux-gnu
--with-xft-libdir=/usr/lib/x86_64-linux-gnu
--with-xext-libdir=/usr/lib/x86_64-linux-gnu
--with-xrootd-opts=--syslibs=/usr/lib/x86_64-linux-gnu --prefix=/usr/local
questo perché CERN ROOT cerca nella directory /usr/lib32 le librerire X11 che invece si trovano in /usr/lib/x86_64-linux-gnu. Ma se lo step di configurazione è stato risolto con estrema semplicità, al momento un secondo problema irrisolto si presenta in fase di compilazione. Infatti il comando:
make -j4
fornisce errore. Rimanete in attesa di aggiornamenti!
Ecco una prima soluzione al problema! Invece di utilizzare make -j4 è necessario digitare il comando:
RispondiEliminamake LDFLAGS="-Wl,--no-as-needed" -j4
questo porterà a termine la compilazione. A questo punto, il comando . bin/thisroot.sh utilizzato nella precedente versione, viene sostituito da:
sudo make install
Ora root funzionerà perfettamente anche su Ubuntu 11.10.
dopo il sudo make install risulta comunque necessario il . bin/thisroot.sh . Il comando . bin/thisroot.sh deve essere eseguito ogniqualvolta si voglia utilizzare CERN ROOT. Per evitare questo è possibile inserire la riga
RispondiElimina. ~/Sorgenti/root/bin/thisroot.sh
al file .bashrc presente in ciascuna home directory di Ubuntu. Nel caso in esame ~/Sorgenti/root indica dove è installato CERN ROOT. Come vedete i suggerimenti di Cristiano per Ubuntu 11.04 sono tornati utilissimi!!!
Dalla nuova versione di ROOT è possibile omettere parte del comando configure. In particolare il nuovo comando da terminale è:
RispondiElimina./configure linuxx8664gcc --with-x11-libdir=/usr/lib/x86_64-linux-gnu --with-xft-libdir=/usr/lib/x86_64-linux-gnu --with-xext-libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr/local