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

Prolog Discussion :

[SWI-Prolog] SWI foreign langage interface [Infos]


Sujet :

Prolog

  1. #1
    Membre éclairé Avatar de mchk0123
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    816
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 816
    Points : 844
    Points
    844
    Par défaut [SWI-Prolog] SWI foreign langage interface
    Bonjour à tous,

    Ce n'est pas vraiment un problème que je vais soumettre à la communauté (bien que résolu seulement partiellement) mais plutôt un conseil sur l'utilisation de la "Foreign Langage Interface" de SWI-Prolog.

    Comme ce dernier semble être le plus usité des Prologs, et que j'ai passé quelques jours à bien me creuser la tête pour trouver une solution, je me suis dit que cela pourrait être trés profitable de faire partager mes résultats.

    Le but de la manoeuvre était simplement d'étendre les prédicats existant en utilisant une bibliothèque C externe.

    Cependant impossible de compiler le code source de la DLL d'exemple du manuel SWI. Aprés de longs tâtonnement, j'en ai déduit ceci :

    - la bibliothèque libpl.lib n'aime pas du tout être utilisée avec mingw (& cygwin ???) : symbol ...Thunk... manquant, toujours pas trouvé de solution
    - par contre avec VC++ 6 on arrive à compiler
    - de préférence utiliser plld pour compiler *ET* lier la DLL (ajoute tout seul les autres bibliothèques nécessaires)
    - le chargement de la DLL se fait par le prédicat "load_foreign_library/1".

    Voilà les quelques pistes en attendant les éventuels commentaires.

    Etonnant tout de même qu'un langage libre se lie plus facilement avec un compilateur commercial qu'avec un compilateur libre (surement un pb. de jeunesse et/ou portabilité).
    Avant de poster un message .
    Quand vous avez la réponse à votre question, n'oubliez pas de cliquer sur .

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Merci de cette contribution .
    J'ai indiqué ici comment appeler Prolog depuis un programme C. (toujours SWI-Prolog et aussi avec Visual C6 à l'époque).
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Membre éclairé Avatar de mchk0123
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    816
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 816
    Points : 844
    Points
    844
    Par défaut
    Merci aussi pour ce lien, car appeler Prolog depuis un programme C peut aussi avoir son utilité.
    Quand même bizarre ce problème de symbole manquant avec gcc et pas avec VC++. Est-ce que par hazard tu as aussi essayé de compilé ton exemple avec gcc ?
    Avant de poster un message .
    Quand vous avez la réponse à votre question, n'oubliez pas de cliquer sur .

  4. #4
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Non, je ne travaille qu'avec VC
    Peut-être un jour je m'y mettrai.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

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

Discussions similaires

  1. Swi Prolog Interface XPCE
    Par maurty dans le forum Prolog
    Réponses: 16
    Dernier message: 20/12/2012, 07h49
  2. Interface SWI Prolog
    Par pocahentez dans le forum Prolog
    Réponses: 6
    Dernier message: 02/12/2012, 23h05
  3. Le mode debug de swi-prolog
    Par Boubou Balrog dans le forum Prolog
    Réponses: 2
    Dernier message: 18/12/2006, 10h55
  4. Désactiver les warnings en swi-prolog
    Par Cecilka dans le forum Prolog
    Réponses: 2
    Dernier message: 15/12/2006, 11h33
  5. Réponses: 3
    Dernier message: 03/05/2006, 15h30

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