2016-05-13 6 views
0

Ich versuche Python in meinem C++ - Code einzubetten, um WordNet über Nltk zu verwenden. Ich bin neu in Python und ich bin mit MS Visual Studio 2015, das gleiche zu tun, aber ich bin vor Probleme, die ich habe,Fehler: 'Python35_d.dll fehlt' beim Ausführen von C++ - Code mit Python in MS Visual Studio 2015

  • installiert Python 3.5 Bisher 15.

    Python auf MSVS zu verwenden. 1,

  • diesen Pfad enthalten: ...\Python\Python35-32\include, die mich lassen umfassen die Python.h Bibliothek,
  • diesen Pfad hinzugefügt: ...\Python\Python35-32\libs die lib Dateien zuzugreifen, und python35.lib als Abhängigkeit in Linker\Input Einstellung von MSVS15,
  • dann ist ein Fehler aufgetreten, anspruchsvolle python35_d.lib, so kompilierte ich Python-Quelle in Modus & kopierte diese Datei in den Ordner ...\libs und es löste das Problem.

Dies alles geschah, als ich nur- dieses

Py_Initialize(); 
PyRun_SimpleString("print (\"Hello World!\\n\")"); 
Py_Finalize(); 

Jetzt versuche ich ausführen, um eine Python-Funktion aus einer .py Datei auszuführen versuchte. Ich versuche this vom Python tutorials zu laufen, aber ich bin immer diesen Fehler -

enter image description here

Beim Debuggen Ich habe festgestellt, dass, wenn das Makro aufgerufen wird: Py_DECREF(), dieser Fehler auftritt.

Muss ich nur python35_d.dll von PCBuild\win32 zu C:\Windows\[System|System32|SysWOW64]\ kopieren, um das Problem zu lösen, da ich nicht weiß, ob es irgendwelche Nebenwirkungen haben wird? Die Datei ist bereits in ...\Python\Python35-32\DLLs\ vorhanden.

Gibt es eine ordnungsgemäße Einrichtung vor der Ausführung von Python in C/C++ mit MSVS, wie this für Unix-ähnliche Systeme? (Ich meine, indem ich andere Abhängigkeiten oder Ordner zu den Einstellungen hinzufüge)

Ich habe Python-Dokumentation kontinuierlich und sogar andere stackoverflow Fragen gelesen, aber ich habe immer noch viel zu kämpfen (ich weiß nicht warum), auch einfach zu tun Dinge.

Kann jemand mich für etwas anleiten/erleuchten, das ich vermisse, weil ich ständig Fehler hier bekomme & dort, bitte?

Danke.

+1

Sie müssen die DLL in den Ordner kopieren, in dem die Binärdatei gebaut wird. –

+0

@DavidMarquant: Danke, es hat gut funktioniert. :) – PalashV

Antwort

0

Kopie python35.dll in den Ordner, in dem SLN-Datei vorhanden ist

+0

Willkommen bei stackoverflow. Stackoverflow ist kein Forum, bitte behalte die Struktur davon. Dies ist mehr ein Kommentar als eine Antwort. Wenn Sie genug Reputation haben, können Sie einen Kommentar schreiben. –

+1

@EliasMP Ich stimme nicht zu. Er versuchte die Frage zu beantworten, die vielleicht nicht richtig war. Siehe Kommentar von * David Marquant * zu der Frage. Diese Antwort könnte jedoch als * LQ * betrachtet werden. –

+0

Dies bietet keine Antwort auf die Frage.Sobald Sie genug [Reputation] (https://stackoverflow.com/help/whats-reputation) haben, können Sie [jeden Beitrag kommentieren] (https://stackoverflow.com/help/privileges/comment); Stattdessen [geben Sie Antworten, die keine Klärung durch den Fragesteller erfordern] (https://meta.stackexchange.com/questions/214173/why-doe-i-need-50-reputation-to-comment-what-can- i-do-stattdessen). - [Aus Bewertung] (/ review/low-quality-posts/17229193) – Exprator

Verwandte Themen