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

Autres éditeurs Discussion :

MinGW et plld


Sujet :

Autres éditeurs

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2002
    Messages : 57
    Par défaut MinGW et plld
    Bonjour à tous,

    Je dois faire fonctionner du C/C++ qui utilise du SWI-Prolog...

    Pour mon C/C++ j'utilise MinGW. Et pour Prolog, je souhaite utiliser le compilateur C qui est inclu à SWI-Prolog qui est "plld"

    J'ai trouvé sans problème des infos la dessus... j'ai trouvé un site où ils donnent même un programme simple sur les nombres premiers avec un fichier premier.cpp et premier.pl .. http://www.montefiore.ulg.ac.be/~van...terfacage.html

    Pour compiler, sous linux, je n'ai eu aucun problème avec plld qui a du trouvé le compilateur c par défaut... je l'ai lancé tout simplement en mettant :
    plld -o output premier.cpp premier.pl

    Mon problème se situe sous Windows (et oui, on nous a obligé à utiliser windows)....

    Donc comme nous avons choisi de travailler avec le compilateur MinGW, je lance la même ligne de compilation (plld -o output.exe premier.cpp premier.pl), il ne veut pas car il ne trouve pas 'cl.exe'...

    Logique, donc je lui dit que j'utilise le compilateur de mingw, en notant :
    plld -o output.exe -c++ mingw32-c++ premier.cpp premier.pl

    Et là, il me fait deux erreurs principales :

    • mingw32-g++.exe: /MD: No such file or directory
      mingw32-g++.exe: /GX: No such file or directory

      Je ne comprend pas pourquoi il cherche ces dossiers... on dirait qu'il les cherche comme si j'utilisais cl.exe... je ne comprend rien...



    • premier.cpp:11:17: stdio: No such file or directory

      En gros, il ne veut pas trouver mon dossier d'include qui est dans mingw alors que j'ai essayé des tonnes de choses, entre autres :

      plld -c++ mingw32-g++.exe -Dinclude-directory C:/MinGW/include/ premier.cpp premier.pl

      plld -c++ mingw32-g++.exe -cc-options,-I C:/MinGW/include/ premier.cpp premier.pl

      Mais il n'arrive jamais à trouver ce dossier d'include...


    Si vous avez une idée, elle serait la bienvenue... je n'ai vraiment pas trouvé grand chose sur le net... peu de personne utilisent plld avec un autre compilateur... je ne suis même pas sure que ce soit vraiment possible... Et j'ai demandé dans la partie de Prolog, mais personne n'a su me répondre... je me suis dit que dans la partie de c/c++, j'aurais peut-être plus de chances...

    Merci d'avoir lu tout ça...

    Bon après midi

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par défaut
    La première erreur, c'est bien qu'il croit utiliser Visual : /MD et /GX sont des paramètres (non des dossiers) qu'accepte cl.exe.
    Tu es sûr au moins que plld peut fonctionner avec mingW ?

    La seconde erreur, c'est stdio ou stdio.h qui foire ? Car stdio n'existe pas...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2002
    Messages : 57
    Par défaut
    Citation Envoyé par Médinoc
    La première erreur, c'est bien qu'il croit utiliser Visual : /MD et /GX sont des paramètres (non des dossiers) qu'accepte cl.exe.
    Tu es sûr au moins que plld peut fonctionner avec mingW ?
    Merci beaucoup, au moins, maintenant, j'en suis sure...
    Ben apparement, oui, plld devrait pouvoir fonctionner avec minGW puisqu'il dit qu'on peut préciser le compilateur...

    Citation Envoyé par Médinoc
    La seconde erreur, c'est stdio ou stdio.h qui foire ? Car stdio n'existe pas...
    Oui, mais en fait, il existe bien, mais j'ai beau mettre le dossier des include dans le path, ou directement en include dans la ligne de compilation, il ne le trouve pas, c'est très bizarre...

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par défaut
    Citation Envoyé par mystar
    Merci beaucoup, au moins, maintenant, j'en suis sure...
    Ben apparement, oui, plld devrait pouvoir fonctionner avec minGW puisqu'il dit qu'on peut préciser le compilateur...
    Attention : Je pense que l'option -c++ mingw32-g++.exe ne dit pas à plld que son compilateur est un compilateur mingW : Elle lui dit simplement que son compilateur C++ s'appelle "mingw32-g++.exe".

    Si tel est le cas, il doit exister (ou non) une AUTRE option pour lui dire que l'environnement est mingW (c'est-à-dire, que les paramètres sont de type GCC et non de type cl). S'il n'y en a pas, c'est que plld pour Windows ne supporte pas mingW, seulement Visual.
    Mais je pense qu'il doit y avoir une telle option, vu que plld pour linux supporte un GCC, c'aurait été stupide de la part des développeurs de mettre un support EXCLUSIF de Visual dans leur version Windows...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2002
    Messages : 57
    Par défaut
    ok, merci beaucoup... alors j'ai bien regardé en détail, et en effet, tu as peut-être raison... en tout cas, il gère bien le gcc d'après ce que j'ai lu...

    En regardant les options, voilà ce que j'ai mais je ne vois pas d'autres options qui fonctionneraient...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    usage: plld -help
           plld [options] inputfile ...
           plld -shared -o out inputfile ...
           plld -dll -o out inputfile ...
           ÚD        -E cppargument ...
     
    options:
           -o out           define output file
     
           -v               verbose
           -f               fake (do not run any commands)
           -g               Compile/link for debugging
           --version        for GCC: run gcc --version
     
           -pl prolog       Prolog to use
           -ld linker       link editor to use
           -cc compiler     compiler for C source files
           -c++ compiler    compiler for C++ source files
     
           -c               only compile C/C++ files, do not link
           -nostate         just relink the kernel
           -shared          create target for load_foreign_library/2
           -embed-shared    embed Prolog in a shared object/DLL
           -dll             synonym for -embed-shared
           -fpic            compile small position-independent code
           -fPIC            compile large position-independent code
     
           -pl-options,...  Add options for Prolog
           -ld-options,...  Add options for linker
           -cc-options,...  Add options for C/C++-compiler
           -F base          Load    swi(base.rc)
           -goal goal       (Prolog) entry point
           -toplevel goal   (Prolog) abort toplevel goal
           -initfile file   (Prolog) profile file to load
           -class class     {runtime,kernel,development}
     
           -O*              Optimization passed to compiler
           -Wl,*            Options passed to linker
           -W*              Warning options passed to compiler
     
           -Dmacro          Define macro (C/C++)
           -Umacro          Undefine macro (C/C++)
           -Iincludedir     Include directory (C/C++)
           -Llibdir         Library directory (C/C++ link)
           -llib            library (C/C++)
    Est-ce que vous avez une idée ???

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par défaut
    Moi non plus je ne vois rien...
    Je crois bien que, selon l'heureuse expression de mon collègue de stage, la version Windows de plld a été "faite par des stagiaires"...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. DevC++ avec un nouveau MinGW est disponible
    Par HRS dans le forum Dev-C++
    Réponses: 1
    Dernier message: 28/02/2005, 13h37
  2. Opérateur not ? Bug avec MinGW 3.4 ? ou mot clé ?
    Par Groove dans le forum Autres éditeurs
    Réponses: 3
    Dernier message: 31/01/2005, 18h05
  3. [minGW] page man
    Par nicolas581 dans le forum Autres éditeurs
    Réponses: 7
    Dernier message: 20/08/2004, 16h45
  4. [info ide] mingw developper studio
    Par heinquoi dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 29/07/2004, 17h02
  5. Bibliothèque Gcc/mingw 2.95.3.6
    Par richard dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 11/10/2003, 22h54

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