Journal Problème de compilation

Posté par  .
Étiquettes : aucune
0
21
mar.
2004
Bonsoir cher journal. Je t'interpèle aujourd'hui en privé pour que tu m'éclaire, une fois de plus, de tes lanternes.

Le problème concerne le jeu DroidBattles (anciennement connu sous le nom de BattleBots). [ http://www.bluefire.nu/droidbattles/index.html(...) ]
Il existe 3 possibilités d'avoir ce jeu sous linux : la version précompilée statique, la version précompilée dynamique, et les sources.

Je suis sous une mandrake 10.0. L'execution de la version précompilée statique se solde bizarement par un core dumped. Celle de la version précompilée dynamique renvoie (beaucoup plus logiquement) "libqt.so.2: cannot open shared object file".

Dernière solution, la compilation à partir des sources... qui ne passe pas non plus : le code est rempli de déclaration de fonctions contenant pour certains de leurs arguments des valeurs par défaut (du genre void fonction(int a, int b, int c=0), et apparement g++ ne les aime pas :
textmodebattlearea.cpp:602: error: default argument given for parameter 6 of `void textmodeBattleArea::addscrobject(int, int, int, int, int, int, int, void*)
En elevant la valeur par defaut de l'argument la ligne compile, mais c'est loin d'etre la seule, et de toute façon cela modifiera le programme.

J'utilise gcc 3.3.2, j'ai essayé de trouver dans le makefile une réference à la version du compilateur pour tester avec gcc 2.96 mais je n'ai pas trouvé.

Si un de tes lecteurs à une idée je suis preneur :) J'ai cherché d'autres jeux dans le même genre (programmation de robots) mais ils leur manque le coté modifications hardware de DroidBattles (ajout de mémoire, de cpus, d'armes, d'armures, ect).

Merci.
  • # Re: Problème de compilation

    Posté par  . Évalué à 2.

    passe une variable d'environnement genre CC=gcc-2.95 avant le ./configure, ça devrait suffire.
    • [^] # Re: Problème de compilation

      Posté par  . Évalué à 1.

      J'ai essayé en faisant ça, mais dans ce cas le configure ne me trouve plus ma lib qt. Enfin je continue à chercher dans cette voie :)
  • # Re: Problème de compilation

    Posté par  (site web personnel) . Évalué à 2.

    Chez moi ca plante aussi avec un segfault de gcc a un endroit mais en relancant le make par dessus ca passe. En revanche, je n'ai pas le mode texte (c'est bien dommage).

    C'est clair que la compilation est loin d'etre propre. Passe un -Wno-deprecated, au moins, pour nettoyer un peu.
    • [^] # Re: Problème de compilation

      Posté par  . Évalué à 1.

      Le make ne passe pas du tout chez moi, le relancer donne les mêmes erreurs...
      Je test le -Wno-deprecated dès que j'aurai trouvé ou le mettre et à quoi ça sert ^^
  • # Re: Problème de compilation

    Posté par  (site web personnel) . Évalué à 2.

    Ca ne resoudra pas ton probleme dans l'immediat, mais essaye de proposer ce jeu au projet Game Of The Month: http://linuxfr.org/2004/03/04/15615.html(...)
    • [^] # Re: Problème de compilation

      Posté par  . Évalué à 1.

      L'idée est originale, mais je pense qu'il y a des jeux plus 'interessant' et qui profiteraient mieux de cette opération.
      Par contre je vais contacter l'auteur pour demander des informations.
  • # Re: Problème de compilation

    Posté par  . Évalué à 1.

    Le problème venait bien du compilateur, gcc au dessus de la branche 3.2 ne laisse plus passer les valeurs par defaut placée dans les arguments.
    Après une compilation de gcc 3.2 et une bidouille à coup d'export CC, CPP et CXX (merci __caffeine__), ça compile (avec moult warnings), et ça marche :)

    Au passage je conseil ce jeu à ceux qui cherchent un jeu de programmation de robot, la possibilité de choisir son hardware offre des possibilités illimitées!

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.