web-dev-qa-db-fra.com

Comment installer root-cern?

L’environnement ROOT du Cern s’installe parfaitement sur 10.10 et est même disponible dans le Centre logiciel, mais il ne sera pas installé ou compilé sur Natty car les répertoires x11 se trouvent à de nouveaux emplacements.

Je peux redéfinir les chemins, mais je reçois ensuite des erreurs de compilation car seul gcc 4.3 est pris en charge par ROOT et Natty utilise la version 4.5. J'ai abandonné et je suis revenu à 10h10, mais ma question est la suivante: après l'installation de ROOT sur Maverick, si j'effectue une mise à niveau vers Natty, mon ancien logiciel fonctionnera-t-il toujours avec ces nouveaux chemins de répertoire?

7
Rick Turd

Il est dommage que root ne soit plus dans le référentiel (s'applique à Ubuntu 11.04). Voici un moyen

COMMENT INSTALLER root sur Ubuntu Natty (x86):

DÉPENDANCES:

Sudo aptitude install gcc g++ make binutils \
                      libx11-dev libxpm-dev libxft-dev libxext-dev
Sudo aptitude install cmake \
                      gsl-bin libgsl0-dev \
                      liblzma2 liblzma-dev \
                      libgmp3c2 libgmp3-dev \
                      libpcre3 libpcre3-dev \
                      zlib1g zlib1g-dev

COMMENT INSTALLER:

wget ftp://root.cern.ch/root/root_v5.30.00.source.tar.gz
tar -xzvpf root_v5.30.00.source.tar.gz
cd root

WHERE_TO_INSTALL_ROOT=/usr/local     ## feel free to change this
./configure linux \
            --with-x11-libdir=/usr/lib/i386-linux-gnu \
            --with-xft-libdir=/usr/lib/i386-linux-gnu \
            --with-xext-libdir=/usr/lib/i386-linux-gnu \
            --with-xrootd-opts=--syslibs=/usr/lib/i386-linux-gnu \
            --prefix=$WHERE_TO_INSTALL_ROOT

make
# Sudo make install                     ## Sudo needed at least for for /etc/root
# NEVER use make install in modern distros. Instead use:
Sudo checkinstall --pkgname=root-framework --fstrans=no --strip=no make install
Sudo 

cd $WHERE_TO_INSTALL_ROOT
source bin/thisroot.sh
root                                  ##  :-)   works...
       .Q                             // to quit root

REMARQUE: Au moment de la rédaction de ce document, la version 5.30/00 était la version la plus récente et recommandée. N'hésitez pas à changer cela en une autre version (je suggère recommandée) disponible au moment où vous lisez ceci.

7
DinGODzilla

Vous pouvez télécharger un package compilé à partir d’ici http://sourceforge.net/projects/cernrootdebs/ c’est assez simple. Lis les instructions.

Pour répondre à Roland Taylor: les instructions sont répertoriées dans le fichier Lisez-moi. L'installation nécessite simplement un double-clic sur l'archive deb.

Citant: "Ce paquet va être installé sur le répertoire/opt/root, afin de ne pas entrer en conflit avec le paquet Root fourni par Ubuntu. Vous voudrez peut-être créer un lien symbolique dans/usr/bin; voici mon choix:

Sudo ln -s /opt/root/bin/root /usr/bin/root-latest 

afin que vous puissiez exécuter la racine à partir d'ubuntu repos en tapant root, ou ma version en tapant root-latest (pour mettre à niveau une version précédente emballée par moi, commencez par supprimer l'ancien paquet) "

Dans le cas où root ne démarre pas car il ne trouve pas libCore.so, mais ces deux lignes dans votre ~/.bashrc

export ROOTSYS=/opt/root/ 
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ROOTSYS/lib/root:

Activation de la prise en charge de asimage, astiff, builtin_afterimage, builtin_ftgl, builtin_glew, cintex, lien explicite, fftw3, genvector, krb5, mathmore, memstat, minuit2, opengl, pgsql, python, reflex , xft, xml. "

4
davrandom

J'ai trouvé un comment assez court sur le Web: http://www.thecampaign.eu/?p=7

De cette page:

Compilation de ROOT 5.28/00b (CERN) sur Ubuntu 11.04 (Natty Narwhal) 5 avril 2011 - 16:49

Comme la question de ce sujet m'a volé une partie de mon "très" précieux temps, je vais vous donner la solution à ce problème plutôt facile. CELA IS JUSTE PAS TRÈS LONG!

Les batailles ROOT ne doivent pas être compilées sur Ubuntu 11.04 en déclarant qu’elles ne peuvent pas trouver certaines bibliothèques (libX11.so, libXext.so et libXft.so). Obtenir

./configure –prefix=/usr/local

pour travailler, indiquez simplement au script où trouver ces bibliothèques inquiétantes en ajoutant –with-x11-libdir=/usr/lib/i386-linux-gnu –with-xft-libdir=/usr/lib/i386-linux-gnu –with-xext-libdir=/usr/lib/i386-linux-gnu –with-xrootd-opts=–syslibs=/usr/lib/i386-linux-gnu à la commande qu'il lit

./configure --with-x11-libdir=/usr/lib/i386-linux-gnu --with-xft-libdir=/usr/lib/i386-linux-gnu 
--with-xext-libdir=/usr/lib/i386-linux-gnu --with-xrootd-opts=–syslibs=/usr/lib/i386-linux-gnu 
--prefix=/usr/local

Apparemment, l'équipe Ubuntu a modifié la structure du répertoire/usr/lib afin d'assurer la compatibilité entre les architectures système.

Une règle à retenir est de définir chaque chemin de bibliothèque pour chaque fonction à la main si possible.

Encore une fois, ne copiez pas et ne collez pas la commande ci-dessus, car il semble que la ligne double soit transformée en une ligne longue par WordPress.

Pour que tout le reste fonctionne, il suffit de suivre les instructions concernant ROOT de mon ancien poste.

J'espère que ça marche.

2
Rinzwind