Pages : 1
#1 Le 20/11/2006, à 13:34
- Neolander
Comment faire marcher IVAN (Iter Vehemens ad Necem) ?
Une fois de plus, je fais face aux éternels problèmes de compilation sous linux : gcc adore expliquer que les programmes sont mal codés (error: invalid use of constructor as a template)...
Ici, j'y fais face avec un excellent petit roguelike dont le nom est donné dans le sujet, et que j'aimerais bien faire marcher SANS wine ! .
Or, le paquet ubuntu ne semble pas exister.
Ca bugge à make en disant :
hadrien@linux-pc2003:~/Desktop/ivan-0.50$ make
Making all in FeLib
make[1]: entrant dans le répertoire « /home/hadrien/Desktop/ivan-0.50/FeLib »
Making all in Source
make[2]: entrant dans le répertoire « /home/hadrien/Desktop/ivan-0.50/FeLib/Source »
g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"ivan\" -DVERSION=\"0.50\" -I. -I. -I../../FeLib/Include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -DLINUX -DLOCAL_STATE_DIR=\"/usr/local/var/ivan\" -DDATADIR=\"/usr/local/share\" -DUSE_SDL -DGCC -g -O2 -c bitmap.cpp
../../FeLib/Include/fearray.h:37: error: invalid use of constructor as a template
../../FeLib/Include/fearray.h:37: note: use ‘fearray<type>::fearray’ instead of ‘fearray<type>::struct fearray<type>’ to name the constructor in a qualified name
../../FeLib/Include/fearray.h:45: error: invalid use of constructor as a template
../../FeLib/Include/fearray.h:45: note: use ‘fearray<type>::fearray’ instead of ‘fearray<type>::struct fearray<type>’ to name the constructor in a qualified name
make[2]: *** [bitmap.o] Erreur 1
make[2]: quittant le répertoire « /home/hadrien/Desktop/ivan-0.50/FeLib/Source »
make[1]: *** [all-recursive] Erreur 1
make[1]: quittant le répertoire « /home/hadrien/Desktop/ivan-0.50/FeLib »
make: *** [all-recursive] Erreur 1
Quelqu'un peut m'aider ?
#2 Le 20/11/2006, à 13:56
- guga
Re : Comment faire marcher IVAN (Iter Vehemens ad Necem) ?
Hello!
quelle version de g++ utilises tu?
Il semblerait que la syntaxe des constructeurs ait changé... Ca doit etre solvable en prenant une version ad hoc du compilo.
Au pire (ultime recours) tu modifies le header fearray.h à la ligne 37 pour mettre la syntaxe proposée:
use ‘fearray<type>::fearray’ instead of ‘fearray<type>::struct fearray<type>’ to name the constructor in a qualified name
Je dis tout ca mais je ne suis pas expert...
Bon courage
Halte au sketch! Réveillons-nous!
http://cluaran.free.fr/dette.html
Hors ligne
#3 Le 20/11/2006, à 17:53
- Neolander
Re : Comment faire marcher IVAN (Iter Vehemens ad Necem) ?
C'est g++ v4.1. La plus récente.
Je pourrais peut-être downgrader à une v3.x (genre la v3.4), mais je suis pas sûr que ce soit une très bonne idée...
#4 Le 02/05/2007, à 10:46
- Aun
Re : Comment faire marcher IVAN (Iter Vehemens ad Necem) ?
j'ai le même problème
Hors ligne
#5 Le 02/05/2007, à 21:37
- murlock
Re : Comment faire marcher IVAN (Iter Vehemens ad Necem) ?
Je viens de tester avec la modif proposée par Guga et cela fonctionne :
fearray<type>::struct fearray<type>( ...
devient
fearray<type>::fearray
Dommage que ce roguelike soit à l'abandon, j'y jouais à l'époque, y avait plein d'idée sympas (perte de membre, décapitation, ... ) même si le côté nourriture le rendait un peu dur à certains moments...
Gloire à mon Saigneur Arioch
Hors ligne
Pages : 1