2012-11-13 3 views

Répondre

3

Vous pouvez créer wrapper sans avoir le fichier source C++, mais vous devez le fichier d'en-tête car le fichier d'interface que vous définirez pour la production d'emballage Python, a besoin d'en-tête du C des dossiers.

utilisant wrapper fichier d'interface peut être générée par les exemples de commandes suivantes:

swig -c++ -python example.i 
g++ -fpic -c example_wrap.cxx -I /usr/include/python2.7/ 
g++ --shared example.o example_wrap.o -o _example.so 

Le example.o est le fichier objet que vous avez déjà. Vous pouvez ensuite démarrer un interpréteur Python et tapez import example pour vérifier qu'il fonctionne.

+0

@tcaswell Alors où sera votre définition de la méthode définie dans le fichier d'en-tête? Dans l'exemple ci-dessus, example.c contient les fonctions définies dans le fichier d'en-tête. – Sibi

+0

@tcaswell J'ai modifié la réponse. Merci de me corriger. – Sibi

+0

np. Supprimé mes commentaires maintenant inutiles. – tacaswell

Questions connexes