用SIP来生成C/C++/Qt库的Python绑定(一)里面我们已经安装好了SIP,现在我们的运行环境如下:
- Windows XP
- Python 2.7.2
- MinGW (gcc 4.4.0)
- SIP4.14.2
接下来我们做一个简单的C++ function的Python绑定
先生成动态链接库foo.dll
我们需要写foo.h, foo.cpp和一个测试程序main.cpp来测试我们生成的foo.dll
- foo.h
#ifndef FOO_H
#define FOO_H
#if defined(FOO_LIBRARY)
#define FOOSHARED_EXPORT __declspec(dllexport)
#else
#define FOOSHARED_EXPORT __declspec(dllimport)
#endif
FOOSHARED_EXPORT int len(const char* str);
#endif //FOO_H
- foo.cpp
#include <string.h>
int len(const char* str)
{
return strlen(str);
}
foo.cpp很简单,就实现了一个函数len(),传入一个字符串,返回字符串的长度。我们用下面的命令