python编译成dll文件_用vc生成可被python调用的dll文件
前提已經有.c 和.i文件
用swid編譯了.i文件生成了wrap.c文件和.py文件
vc創建dll工程
將.h加入到頭文件中.c文件和wrap.c文件添加到源文件中 將.i文件添加到工程目錄下
Tools->Options->Directories中修改include 和lib 添加python里的include 和libs
把\libs\python27.lib復制一份 并且改名為python27_d.lib
修改 pyconfig.h (我只修改了前兩樣 后面沒修改也成功了)
#ifdef _DEBUG
# define Py_DEBUG
#endif
為#ifdef _DEBUG
//# define Py_DEBUG
#endif
修改
# ifdef _DEBUG
# pragma comment(lib,"python24_d.lib")
# else
# pragma comment(lib,"python24.lib")
# endif /* _DEBUG */
為
# ifdef _DEBUG
# pragma comment(lib,"python24.lib")
# else
# pragma comment(lib,"python24.lib")
# endif /* _DEBUG */
修改object.h
修改
#if defined(Py_DEBUG) && !defined(Py_TRACE_REFS)
#define Py_TRACE_REFS
#endif
為
#if defined(Py_DEBUG) && !defined(Py_TRACE_REFS)
// #define Py_TRACE_REFS
#endif
把生成的name.dll文件改為_name.pyd 將前面的.py和_name.pyd文件放到一個文件中(我試的時候只有.pyd文件就可以)
新建一個test文件:
import name
aa = name.somefunction()
print(aa)
總結
以上是生活随笔為你收集整理的python编译成dll文件_用vc生成可被python调用的dll文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue 仿二手交易app_Vue项目开发
- 下一篇: 软件开发模型_QT开发(二十三)——软件