C/C++
Les utilisateurs du CC-IN2P3 ont plusieurs compilateurs du langage C/C++ à leur disposition.
Compilateurs GNU
GNU a développé des compilateurs pour les langages C/C++ fournis avec le systeme Linux.
gcc (via
gcc
orcc
) est le compilateur GNU pour le langage C.g++ (via
g++
orc++
) est le compilateur GNU fourni avec le systeme Linux.
Pour connaître la version du compilateur faites :
% gcc -v
% cc -v
% g++ -v
Veuillez vous référer à la syntaxe des logiciels de gestion d’environnement pour lister et charger la version souhaitée.
La documentation est disponible via la commande man
comme dans l’exemple ci-dessous :
% man gcc
Compilateurs PGI
Le CC-IN2P3 dispose d’un certain nombre de licences flottantes (via FlexLM) pour l’utilisation du compilateur C/C++ fourni par PGI (Portland group). Pour compiler votre code source, suivez la syntaxe des logiciels de gestion d’environnement pour lister et charger la version souhaitée.
Veuillez trouver ici la documentation PGI officielle.
pgcc est le compilateur PGI pour le langage C
pgc++ est le compilateur PGI pour le langage C++
pgdbg est le deboguer
pgprof est le profiler
Pour consulter les options de la commande pgcc
et pgc++
utilisez la commande man
comme dans l’exemple ci-dessous :
% man pgcc
- Exemple de syntaxe de compilation :
% pgcc -O -c test.c
Si vous voulez faire l’édition des liens (« linker ») et exécuter votre programme avec la bibliothèque CERN (CERNLIB), il faut ajouter la bibliothèque libg2c.a
fournie avec le compilateur g77 avec laquelle la CERNLIB a été compilée. La même remarque est valable pour les bibliothèques compilées avec g77 (comme la bibliothèque NAG par exemple).
% set g2c = '-lg2c'
% pgcc -O -o test test.c `cernlib` -lpthread -lm ${g2c}
% ./test
Compilateur Intel
Le CC-IN2P3 dispose d’un certain nombre de licences flottantes (via FlexLM) pour l’utilisation des compilateurs fourni par Intel.
Ce logiciel regroupe un ensemble de compilateurs C/C++ et Fortran avec le deboggeur interactif idb et avec les bibliothèques :
MKL (Math Kernel Library) ;
IPP (Integrated Performance Primitives) ;
Threading Building Blocks for Linux.
Pour compiler votre code source, suivez la syntaxe des logiciels de gestion d’environnement pour lister et charger la version souhaitée. Pour consulter les options du compilateur :
% man icc
- Exemple de syntaxe de compilation :
% icc -O -c test.c
Si vous voulez faire l’édition des liens (linker) et exécuter votre programme avec la bibliothèque CERN (CERNLIB),
il faut ajouter la bibliothèque libg2c.a
fournie avec le compilateur g77 avec laquelle la CERNLIB a été compilée.
La même remarque est valable pour les bibliothèques compilées avec g77 (comme la bibliothèque NAG par exemple).
% set g2c = '-lg2c'
% icc -O -o test test.c `cernlib` -lpthread -lm ${g2c}
% ./test
Veullez trouver ici la documentation Intel C++ offcielle.
Bibliothèques NAG
Veuillez vous référer à la syntaxe des logiciels de gestion d’environnement pour lister et charger la version souhaitée.
Pour une documetation detaillée, veuillez vous référee au site de l’editeur.