Précédent   Forum des professionnels en informatique > Systèmes > Linux
Linux Forum d'entraide sur le système Linux. Avant de poster -> Tutoriels Linux, F.A.Q Linux
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/07/2011, 12h40   #1
Nouveau Membre du Club
 
Inscription : décembre 2007
Messages : 190
Détails du profil
Informations personnelles :
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : décembre 2007
Messages : 190
Points : 30
Points : 30
Par défaut Comment compiler non-ANSI avec gcc ?

Bonjour,
j'ai chez moi un linux ubuntu avec compilo gcc sur un PC ordinaire; je bosse sur une HP 9000 (pas du tout en développement informatique, mais en mécanique-calcul de structure) et j'utilise surtout le fortran pour faire de vulgaires moulinettes séquentielles avec un ou deux fichiers d'entrée et une sortie. Donc je suis un peu largué quand il s'agit du C; or, j'ai compris (difficilement mais ça c'est une autre histoire) que le compilo de la HP n'est pas ANSI, donc qu'il ne veut pas de prototypes, qu'il n'aime pas les "instructions-déclarations", qu'il faut lui déclarer et typer les arguments d'une fonction avant le corps de celle ci, bref, tout un tas de particularités non algorithmiques.
Je voudrais pouvoir mettre au point chez moi quelques bidules dont j'ai besoin au boulot, et pour ça j'aimerais bien que mon compilo ait le même comportement que celui de la HP. J'ai déjà trouve qu'on pouvait utiliser le préprocesseur avec de #ifdef linux #else /* pour la HP */ #endif, mais cela est un petit peu lourd à utiliser.
Alors y a-t'il une option du gcc qui éjecte la sytaxe ANSI ? Je n'ai pas trouvé dans le man, mais sur une vieille SUN sur laquelle je bossais auparavant, on pouvait se restreindre à du K&R de base.
Merci de me dire où je pourrais trouver d'autres infos là dessus.
__________________
David
P.S. Dis Toto, pourquoi l'univers existe-t'il ?
Je vais y réfléchir avec Morphée et lui dès avant 23h, donc il faut se causer ici avant.
dva2tlse est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 18/07/2011, 13h14   #2
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 464
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 464
Points : 9 585
Points : 9 585
Bonjour,

En fait, ton serveur HP doit etre particulierement vieux. La description que tu fais est du C pre-ansi, c'est a dire tel qu'il etait ecrit avant que la norme C soit ecrite (en 89, revue en 99).

Regarde dans les options de gcc si tu ne peux pas avoir un mode pre-89, mais je ne suis pas certain que ca existe (tu as un mode 89 stricte, et un mode 99).

Dans tous les cas, rien ne remplacera la compilation sur ta machine, ou sur un clone de celle-ci.
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 19/07/2011, 15h07   #3
Nouveau Membre du Club
 
Inscription : décembre 2007
Messages : 190
Détails du profil
Informations personnelles :
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : décembre 2007
Messages : 190
Points : 30
Points : 30
Bonjour,
en effet, la HP sur laquelle je bosse doit être un "vieux machin" (mais il y a encore pire dans le bureau de calcul); je viens de survoler le man de gcc, et il y a bien tout un tas d'options, depuis -ansi, puis -std=c89, et -fgnu89-inline, et d'autres standards plus récents, mais aucun ne semble remonter aux temps préhistoriques de ma bécane. (et "inline" je ne sais même pas ce que ça veut dire)
Quand les vacances seront finies (même pas SNIF) j'essaierai de penser à relever l'OS et l'âge du phénomène.
Et je continuerai à compiler gentiment avec les #ifdef linux du préprocesseur.
__________________
David
P.S. Dis Toto, pourquoi l'univers existe-t'il ?
Je vais y réfléchir avec Morphée et lui dès avant 23h, donc il faut se causer ici avant.
dva2tlse est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 09/08/2011, 19h41   #4
Nouveau Membre du Club
 
Inscription : décembre 2007
Messages : 190
Détails du profil
Informations personnelles :
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : décembre 2007
Messages : 190
Points : 30
Points : 30
AYÉ les ouacances sont finies, et ma bécane dit :

$ uname -a

HP-UX la_bécane B.11.11 U 9000/785 3960529398 unlimited-user license

je ne sais pas l'âge, sauf que c'est du vieux matos, mais l'OS doit donner quelques indications.
David
__________________
David
P.S. Dis Toto, pourquoi l'univers existe-t'il ?
Je vais y réfléchir avec Morphée et lui dès avant 23h, donc il faut se causer ici avant.
dva2tlse est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/08/2011, 08h37   #5
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 534
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 534
Points : 7 743
Points : 7 743
11.11 c'est pas si vieux que ça, c'est peut être du HP2600 ou du HP visualize qui ont genre entre 5 et 8 ans ... ??

ici la plus vieille machine qu'on ai en prod est un sun sparcstation 4 !
on a des tas de vieilles HP et même du DEC alpha....
des bull etrella escalla et compagnie....

coté vieux matos on est servi aussi ! mais j'adore ça...
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/08/2011, 16h57   #6
Expert Confirmé
 
Emmanuel Deloget
Inscription : septembre 2007
Messages : 1 542
Détails du profil
Informations personnelles :
Nom : Emmanuel Deloget
Âge : 36
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : septembre 2007
Messages : 1 542
Points : 2 905
Points : 2 905
Tu peux essayer de regarder l'option -traditional (émule un compilateur pré-standard).

Une autre option, si tu contrôle ton linux, et d'installer une version plus ancienne de gcc (par exemple une 2.95). Les vieilles version de gcc sont encore disponibles ici :

http://ftp.gnu.org/pub/gnu/gcc/
__________________
[FAQ des forums][FAQ Développement 2D, 3D et Jeux][Si vous ne savez pas ou vous en êtes...]
Essayez d'écrire clairement (c'est à dire avec des mots français complets). SMS est votre ennemi.
Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Café. C'est dépassé tout ça.
Et si vous êtes sages, vous aurez peut être vous aussi la chance de passer à la télé. Ou pas.

Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.
Emmanuel Deloget est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/01/2012, 12h53   #7
Nouveau Membre du Club
 
Inscription : décembre 2007
Messages : 190
Détails du profil
Informations personnelles :
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : décembre 2007
Messages : 190
Points : 30
Points : 30
Par défaut Ok super, merci tardif, et une autre question d'éditeur hexa

Ok super, merci tardif, et une autre question d'éditeur hexa :

je cherche un éditeur hexadécimal dont le code soit du fortran ou du C pour pouvoir le compiler facilement et l'utiliser sur une machine HP9000 sous HP-ux que j'ai à mon boulot. Peu importe si c'est du mode console ou de la GUI.
Merci de me donner des pistes pour dégotter ça,
__________________
David
P.S. Dis Toto, pourquoi l'univers existe-t'il ?
Je vais y réfléchir avec Morphée et lui dès avant 23h, donc il faut se causer ici avant.
dva2tlse est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h17.


 
 
 
 
Partenaires

Hébergement Web