Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Qui assemble pour gcc ? (ada et amd64)

2 réponses
Avatar
matlerouge
Bonjour,

J'ai un probleme : pour installer le compilo ada 'gnat' sur ma gentoo
amd64, il me faut la distrib binaire de gnat (car l'arbre portage
d'amd64 ne le contient pas)

Le soucis est que cette distribution de gnat contient gcc version 2.8.1,
alors que moi je tourne sous gcc 3.4.3. Ceci n'est pas tres grave, a
part que si je compile n'importe quoi sous gcc 2.81 il me dit :
(exemple gcc toto.c, avec toto.c un truc correct en C)

/tmp/ccAUKhPA.s: Assembler messages:
/tmp/ccAUKhPA.s:9: Error: suffix or operands invalid for `push'
/tmp/ccAUKhPA.s:12: Error: `-4(%ebp)' is not a valid 64 bit base/index
expression
/tmp/ccAUKhPA.s:13: Error: `-4(%ebp)' is not a valid 64 bit base/index
expression

Mais si je compile le fichier assembleur avec gcc 3.4.3 en lui passant
l'option m32, ca marche

exemple : gcc -m32 toto.s ==> ca me donne un fichier toto.o sans erreur.
(toto.s est le fichier produit par gcc 2.81)
(mais -m32 n'existe pas sous gcc 2.8.1)

Donc je me demande si gcc n'envoie pas le code assembleur qu'il a
produit a un assembleur qui tourne en 64bits nativement, d'ou l'erreur.

Comment je peux configurer ca ? Au moin que gcc 2.81 me compile du code
C, je verais ensuite pour l'ada.


(je precise qu'il est impossible de remplacer gcc2.811 par la version
3.43 directement car il faut que gcc soit compilé avec le suport d'ada,
mais les outils ada etant fait en ada, il me faut un compilo ada qui
marche si je veux recompiler 3.4.3 avec le suport ada (si j'ai bien tout
compris))

Merci de votre aide

2 réponses

Avatar
Galkine Guy
Le Sat, 20 Nov 2004 15:17:25 +0100, matlerouge a écrit :


(je precise qu'il est impossible de remplacer gcc2.811 par la version
3.43 directement car il faut que gcc soit compilé avec le suport d'ada,
mais les outils ada etant fait en ada, il me faut un compilo ada qui
marche si je veux recompiler 3.4.3 avec le suport ada (si j'ai bien tout
compris))
de la doc pour installer gnat

http://www.fr.linuxfromscratch.org/view/blfs-5.0-fr/general/gcc.html

Avatar
Matlerouge
Galkine Guy wrote:



(je precise qu'il est impossible de remplacer gcc2.811 par la version
3.43 directement car il faut que gcc soit compilé avec le suport d'ada,
mais les outils ada etant fait en ada, il me faut un compilo ada qui
marche si je veux recompiler 3.4.3 avec le suport ada (si j'ai bien tout
compris))


de la doc pour installer gnat
http://www.fr.linuxfromscratch.org/view/blfs-5.0-fr/general/gcc.html


Le probleme c'est qu'il faut que le gcc de la distrib de gnat compile !
Or chez moi il ne compile pas