IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

Directive de compilation en fonction de l'OS, du processeur de destination [FAQ] [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 098
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 098
    Points : 1 061
    Points
    1 061
    Par défaut Directive de compilation en fonction de l'OS, du processeur de destination
    Bonjour à toutes et à tous,

    Pour différencier les OS, entre WINDOWS et LINUX, on peut utiliser les balises :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    {$IFDEF WIN32}
    // code pour Windows
    {$ENDIF}
    ...
    {$IFDEF LINUX}
    // code pour Linux
    {$ENDIF}
    Maintenant, si je veux distinguer les processeurs, par exemple un PC (X86) et un Raspberry (ARM), qu'est-ce que j'utilise comme balise ?

    Cordialement.

    Pierre

  2. #2
    Membre éprouvé
    Homme Profil pro
    Chef de projets retraité
    Inscrit en
    Juillet 2011
    Messages
    435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Chef de projets retraité
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2011
    Messages : 435
    Points : 1 137
    Points
    1 137
    Par défaut
    Bonjour,

    Programmer Guide Free pascal Table G2:

    Define When defined?




    CPU86 Free Pascal target is an Intel 80x86 or compatible (16 and 32 bit).
    CPU87 Free Pascal target is an Intel 80x86 or compatible (16 and 32 bit).
    CPU386 Free Pascal target is an Intel 80386 or later.
    CPUI386 Free Pascal target is an Intel 80386 or later.
    CPU68K Free Pascal target is a Motorola 680x0 or compatible.
    CPUM68K Free Pascal target is a Motorola 680x0 or compatible.
    CPUM68020 Free Pascal target is a Motorola 68020 or later.
    CPU68 Free Pascal target is a Motorola 680x0 or compatible.
    CPUSPARC32 Free Pascal target is a SPARC v7 or compatible.
    CPUSPARC Free Pascal target is a SPARC v7 or compatible.
    CPUALPHA Free Pascal target is an Alpha AXP or compatible.
    CPUPOWERPC Free Pascal target is a 32-bit or 64-bit PowerPC or compatible.
    CPUPOWERPC32 Free Pascal target is a 32-bit PowerPC or compatible.
    CPUPOWERPC64 Free Pascal target is a 64-bit PowerPC or compatible.
    CPUX86_64 Free Pascal target is a AMD64 or Intel 64-bit processor.
    CPUAMD64 Free Pascal target is a AMD64 or Intel 64-bit processor.
    CPUX64 Free Pascal target is a AMD64 or Intel 64-bit processor
    CPUIA64 Free Pascal target is a Intel itanium 64-bit processor.
    CPUARM Free Pascal target is an ARM 32-bit processor.
    CPUAVR Free Pascal target is an AVR 16-bit processor.
    CPU16 Free Pascal target is a 16-bit CPU.
    CPU32 Free Pascal target is a 32-bit CPU.
    CPU64
    Cordialement

  3. #3
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 972
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 972
    Points : 15 440
    Points
    15 440
    Par défaut
    Yep !

    Citation Envoyé par ChPr Voir le message
    Maintenant, si je veux distinguer les processeurs, par exemple un PC (X86) et un Raspberry (ARM), qu'est-ce que j'utilise comme balise ?
    j'ai fait F1 avec la souris sur un $IFDEF quelconque, me suis retrouvé sur une page où j'ai pu cliquer sur Start conditional compilation et là, tout en bas l'appendix G, Compiler defines during compilation va t'amener sur une page où la table G.2 fera probablement ton bonheur.

    EDIT : argggh, grillé par acaumes,

  4. #4
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 098
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 098
    Points : 1 061
    Points
    1 061
    Par défaut
    Merci à vous deux

    J'avoue que sur ce coup là, je n'ai pas fait fort. Faudra que je me remémore que F1 ça sert à quelque chose.

    Désolé.

    Pierre

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Directive de compilation fonction ~ EXIST ?
    Par Aooka dans le forum Débuter
    Réponses: 4
    Dernier message: 30/09/2015, 12h07
  2. Directives de compilation (globales ?)
    Par korntex5 dans le forum Langage
    Réponses: 6
    Dernier message: 24/10/2005, 15h13
  3. [LG] Compilation de fonction 'sans retour', ...
    Par poppels dans le forum Langage
    Réponses: 5
    Dernier message: 16/10/2005, 13h08
  4. directive de compilation
    Par gandf dans le forum C++Builder
    Réponses: 4
    Dernier message: 12/02/2005, 11h46
  5. Directives de compilations.
    Par ushu dans le forum Langage
    Réponses: 2
    Dernier message: 28/01/2003, 11h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo