Je suis en train de construire une extension C++ pour python en utilisant swig. J'ai suivi les instructions ci-dessous et les autres à un T et n'arrive pas à charger mon extension.toutes les informations de compilation swig + python + mingw disponibles sont-elles périmées?
J'ai parcouru cet article sur le site MinGW sous "Comment créer des extensions Python?"
Je trouve aussi ces tutoriels:
http://boodebr.org/main/python/build-windows-extensions http://www.mail-archive.com/[email protected]/msg04655.html http://oldwiki.mingw.org/index.php/Python%20extensions
I » m en utilisant Panda3d-1.7.0 pour compiler - panda sur win32 exécute python2.6.4 (MSC v.1500 compilé). J'utilise MinGW gcc/g ++ (GCC) 3.4.5 pour compiler.
J'ai remarqué que quand je lance setup.py avec la commande suivante:
python setup.py build -cmingw32
gcc.exe fonctionne d'abord, puis g ++ exe pour construire le PYD.. Elle se lie et se connecte assez bien (pas d'erreurs) mais, quand je copie les fichiers _extension.pyd et extension.py dans Panda3d-1.7.0 \ python \ Lib \ site g ++ est lié à: -lpython26 -lmsvcr90
et exécuter -Les forfaits> python -c « extension à l'importation » de la ligne de commande, Python décharges suivantes:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Panda3D-1.7.0\python\Lib\site-packages\extension.py", line 25, in <module>
_bullet = swig_import_helper()
File "C:\Panda3D-1.7.0\python\Lib\site-packages\extension.py", line 21, in swig_import_helper
_mod = imp.load_module('_extension', fp, pathname, description)
ImportError: DLL load failed: The specified module could not be found.
des conseils ou des pointeurs? Merci!
ct
Merci pour votre aide. Le walker de dépendances fait remarquer que certains de la lib *.les fichiers avec lesquels je suis lié manquent leurs dll respectives dans mon chemin Je vais jouer avec ça pendant un moment, quand il sera résolu, je reviendrai avec vous. –
Juste vérifié tout dehors et il semble que c'était mon problème - gcc/g ++ liaient avec une lib * .a qui n'avait pas de compagnon dll dans mon% PATH% - merci encore pour le conseil et le href à la dépendance marcheur, sauvé ma journée! –
@ct, Notez également que le dépendant des dépendances peut être scripté. Je l'ai inclus dans ma suite de tests normale avant de compiler une version ou un programme d'installation pour m'assurer que j'ai empaqueté toutes les DLL nécessaires, par exemple. C'est un outil pratique. Heureux d'avoir aidé. – RBerteig