Re: gcc et amd64
Alexandre Pineau <alexandre.pineau@free.fr> wrote:
Salut,
> Je maintiens le paquet "ire" et celui-ci ne se compile pas correctement sur amd64 avec gcc 4.
> J'ai appliqué le patch qui m'a été transmis, mais j'aimerai etre sur de mon coup avant de
> demander un upoad à mon sponsor.
> Il y a t'il un moyen de compiler pour une archi x86-64 en utilisant une archi x86 classique?
> J'ai essayé d'imposer l'archi avec -march=k8, mais sans résultat. En cas, pourriez vous
> essayer de compiler ire 0.92 (unstable) sur une archi amd64 pour moi?
> Le fichier dif ire_0.92-2.diff.gz est dispo sur http://alexandre.pineau.free.fr/fichiers/ire_0.92/
Ca compile sans problème, par contre ça vautre immédiatement.
===== 8< snip 8< =====
--- ire-0.92.orig/src/ithelib/debug.c
+++ ire-0.92/src/ithelib/debug.c
@@ -98,6 +98,7 @@
{
FILE *blt;
va_list ap;
+va_list ap2;
if(ilog_logoff)
return;
@@ -106,16 +107,18 @@
ithe_panic("ilog_text() - Missing call to ilog_start",NULL);
va_start(ap, msg);
+va_copy(ap2, ap);
vprintf(msg,ap);
blt=fopen(bootlog,"a");
if(!blt)
ithe_panic("Could not append to log file",bootlog);
-vfprintf(blt,msg,ap);
+vfprintf(blt,msg,ap2);
fclose(blt);
va_end(ap);
+va_end(ap2);
}
/*
===== 8< snip 8< =====
Ne JAMAIS utiliser une va_list 2 fois de suite. Ca ne marche pas. Sauf
sur cette archi pourrie qu'est i386. Partout ailleurs, c'est garanti
de ne pas marcher. (pour les détails, man va_list)
Il y a sûrement d'autres endroits où ce problème existe, je n'ai pas
tout vérifié.
JB.
--
Julien BLACHE - Debian & GNU/Linux Developer - <jblache@debian.org>
Public key available on <http://www.jblache.org> - KeyID: F5D6 5169
GPG Fingerprint : 935A 79F1 C8B3 3521 FD62 7CC7 CD61 4FD7 F5D6 5169
Reply to:
- References:
- gcc et amd64
- From: Alexandre Pineau <alexandre.pineau@free.fr>