用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)
最新文章
- linux查看是什么操作系统是什么命令
- php中return的用法实例分析
- oracle给字段添加描述
- webapi返回json格式,并定义日期解析格式
- JavaScript访问修改css样式表
- Java基础毕向东day04
- 从Wolframserver获取DC comics卡通人物数据
- Robotium 系列(2) - 简单介绍Monkey和MonkeyRunner
- openssl移植
- git config找到下载的路径URL
- php 数组 array_values () array_key()
- 用批处理编译*.sln工程
- C#多线程和线程同步总结
- Excle巧取汉字打头的字串内容
- XListView下拉刷新和上拉加载更多详解
- java points[复习]
- C# 进程间通讯
- MySQL没有备份怎么恢复被drop的表(利用undrop-for-innodb)
- centos7学习笔记-安装后的一些配置
- PXC备份方式总结