Partage
  • Partager sur Facebook
  • Partager sur Twitter

Communication python et c++

    22 mai 2011 à 12:04:28

    Bonjour à tous !

    Voila, je dois appeler une fonction dans un fichier c++ via mon script python.

    Pour python vers python, pas de soucis :

    import fichier.py
    if __name__ == "__main__":    
        fichier.fonction()
    


    Par contre avec le c++ même en cherchant sur google je galère.
    J'aimerais cependant, % a ce que j'ai lu, que ce module python qui exécute la fonction c++ soit justement écrite en c++

    Merci d'avance !
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      22 mai 2011 à 12:30:00

      Il faut que tu fasse un binding. C'est a dire une dll ou .so qui se comporte comme un module python pour qu'il soit capable de le charger.

      Si tu fais du C++ je te conseil Boost::Python
      • Partager sur Facebook
      • Partager sur Twitter
        22 mai 2011 à 13:53:37

        Je vois... http://www.python.org/ftp/python/doc/2 [...] n-Docs-2.5.3/

        Ext.ps serait il un module de ce genre ? Je vais jeter un oeil...
        • Partager sur Facebook
        • Partager sur Twitter
          22 mai 2011 à 22:36:51

          ça http://docs.python.org/extending/index.html et ça http://docs.python.org/py3k/extending/extending.html devrait t'aider :)
          (fais attention à la version utilisée, il y a certainement des différences)
          • Partager sur Facebook
          • Partager sur Twitter
          ~( ・   ω   ・)~
            23 mai 2011 à 6:08:32

            import os 
            
            def test():
                return os.execv('chemin absolut de ton exe c++', ["0"]) #["0"] est un argument que j'ai
                                                                               #mis au pif car il en faut un 
                                                                               #mais je sais pas lequel mais
                                                                               #ça marche donc Osef.
            
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              23 mai 2011 à 7:37:39

              J'utilisais SWIG pour utiliser mes fonctions C/C++ .

              En gros ça te crée ton module py compatible avec tes autres modules créés en python.

              • Partager sur Facebook
              • Partager sur Twitter

              Communication python et c++

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown