Utilisation d'une librairie GNU : Cgicc

Ynnead

Membre confirmé
24 Janvier 2007
11
0
La Rochelle / Sophia Antipolis
Bonjour à tous,

Pour des projets de développement Web, je dois utiliser la librairie GNU Cgicc qui est une implémentation de CGI pour C++.
J'ai téléchargé et installé la librairie sur mon MBP C2D avec succès, tout semble s'être correctement déroulé.

Seulement voilà, dès que je tente de compiler le moindre fichier cpp de test qui inclus des classes de cette librairie, g++ m'affiche des centaines (au moins) d'erreur de type "template with c linkage" pour chaque librairie et sous librairie incluse.

J'ai parcouru le net pour essayer de glaner des informations sur cette erreur, et elle semble survenir assez souvent lorsque l'on utilise des librairies C/C++ sur Mac OS X (problème de version de gcc ? j'en sais trop rien). Mais j'ai du mal à exploiter les quelques résultats, et encore plus de mal à comprendre pourquoi l'erreur survient dans mon cas.

J'ai franchement pas de pistes, donc si quelqu'un a déjà eu ces erreurs envahissantes, et surtout comment il les a résolues, son coup de main sera le grand bienvenu !

Merci d'avance

PS : Je compile à la main dans le bash avec g++, version de gcc = 4.0.1
 
Ce que je vais te dire ne vas pas t'arranger :
1. j'ai téléchargé et décompressé CGICC 3.2.3
2. j'ai passé 'configure'
3. j'ai fait 'make'
4. c'est compilé.

Infos :
- système : PPC / 10.4.8
- XCode : 2.4
- g++ : 4.0.1

Donc, sur PPC, ça marche.
 
En fait, chez moi, le configure, le make et le make install fonctionnent très bien (enfin la librairie est correctement installée semble-t-il).
C'est pour compiler un cpp qui inclus des headers de cgicc que ça me pose un problème.
Par exemple, pour tester, avec un test.cpp tout bête dans ce genre :

Bloc de code:
#include <cgicc/Cgicc.h>

int main(){
  cgicc::Cgicc sonCgicc ;
  return 0 ;
}
compil&#233; avec la commande
Bloc de code:
g++ -Wall -I /usr/include/cgicc -c test.cpp
provoquera les erreurs "template with c linkage" en s&#233;rie. Je suis vraiment dans le flou :confused:
 
Je n'avais pas fait attention au "-c".
Chez moi, ton programme de test compile sans erreur. Donc à priori pas de soucis sur PPC. :zen: Si quelqu'un peut essayer sur un Intel ? :confused:
 
Salut Ynnead.

Je suis à l'IUT avec toi et, pour le même projet, j'ai essayé d'installer cgicc sur mon Mac Intel.
Apparemment sur place, on utilise g++ version 3.3. Quand j'essaie de compiler un programme simple comme celui que tu as décris avec g++-3.3, j'obtiens :
Bloc de code:
$ g++-3.3 -Wall cgicc.cpp -o cgicc
g++-3.3: installation problem, cannot exec `cc1plus': No such file or directory
En effet, si je cherche cc1plus dans le disque, il n'apparait que dans des dossiers "ppc" pour la version 3.3 de gcc/g++
Bloc de code:
$ locate cc1plus
/usr/libexec/gcc/darwin/ppc/3.3/cc1plus
/usr/libexec/gcc/darwin/ppc/3.3-fast/cc1plus
/usr/libexec/gcc/i686-apple-darwin8/4.0.1/cc1plus
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/cc1plus
Donc il semblerait que si on veut compiler avec g++ 3.3 comme à l'IUT, c'est mort car cette version du compilateur n'a pas du être revue pour les Mac Intel.

Je vais quand même continuer de voir mais bon... Dis-moi si tu trouves quelque chose (car il va encore être impossible à finir dans les temps ce projet :rolleyes:).
 
La version 3.3 de gcc est &#224; utiliser pour compiler la classe OCCI (l'interface avec Oracle), mais pour des sources n'utilisant que Cgicc, la derni&#232;re version de g++ (4.0 &#224; l'IUT, comme sur les notres) suffit &#224; compiler avec la ligne toute b&#234;te que j'ai cit&#233;e plus haut (j'ai encore test&#233; tout &#224; l'heure avant de partir).
Je commence &#224; croire que &#231;a va &#234;tre dur de porter toutes ces vieilles librairies chez nous.
De toutes fa&#231;ons, selon JM "si &#231;a marche pas c'est pas normal parce que normalement &#231;a fonctionne".

* sigh *