Quel bon gcc prendre dans la serie des 3.X

bjr.
Je compile actuellement un code (cedega pour ne pas le citer), qui refuse les ecritures du type:((char *)rtp)++;j’ai fait une première série de remplacements du typertp+=sizeof(char);
1ere question: j’ai bon ?
bon ensuite, ca fait passer un fichier corrigé, mais j’ai le même type d’erreurs de syntaxe derriere.
Je me disais donc que peut être soit ca se règlait par une option passée à gcc4, soit en installant un gcc anterieur.
Ca dit qqchose à qqu’un ?
PS: le type de rtp (ca peut servir)
riff_tag_t *rtp;

bon. quel que soit le compilo (jusqu’au 2.95), ca plante.
GRRRRRRR.

Tu as essayé de compiler avec g++ plutot que gcc???

c’est pas moi qui décide, c’est make.
tu veux dire qu’un
CC=g++ make install
passerais mieux ?
Je vais peut être tester, mais j’ai trouvé mieux (peut être):
lists.transgaming.org/pipermail/ … 00533.html
il n’y a qu’un truc:
je ne sais pas trop comment appliquer les patchs…


Pourquoi faire ça ?

rtp++; ça devrais suffir ...

Pourquoi faire ça ?

rtp++; ça devrais suffir …

euh, pour appliquer un patch sinon, faut le diff et faire un cat fichier.diff | patch -pX

ou X peut être 0, 1, 2, … (ça sert pour déterminer la “racine” des fichiers)

[quote=“ed”]((char *)rtp)++;
Pourquoi faire ça ?[/quote]tt à fait, ca c’est l’original qui passe pas, et c’est pour ça que j’ai voulu corriger (erreur de lvalue).

alors le patch qu’a fourni le gars dans le lien au dessus fait la correction de la manière suivante:

Ce qui conserve la logique de cast dans un (char *) (ce que j’avais essayé de conserver mais à mon avis maladroitement), mais le cast dans l’autre sens est fait avant l’affectation et fait disparaitre le pb de lvalue.
Je sens des precautions pour la compil 32/64
Ce que je ne comprends pas, c’est comment ça a jamais pu compiler…
Enfin, maintenant que tu m’as rappelé l’usage de patch (j’etais parti à utiliser le fichier de patch comme entrée standard dans un ed editant l’original :open_mouth: ), je vais pouvoir me remettre à la compil de cedega. En attendant, je me débats avec mplayer, mais là, la compil a l’air de passer.