我建立了一个DLL在VS2010用的boost :: python的一些功能导出到一个Python模块:导入蟒蛇增强模块
myDLL.cpp:
std::string greet() { return "hello, world"; }
int square(int number) { return number * number; }
BOOST_PYTHON_MODULE(getting_started1)
{
// Add regular functions to the module.
def("greet", greet);
def("square", square);
}
到这里,一切都编译就好了。然后我在c:\ myDLL \ Debug中获取myDLL.dll和myDLL.lib文件。
根据boost文档(http://wiki.python.org/moin/boost.python/SimpleExample),我需要将它添加到PYTHONPATH,所以我添加了c:\ myDLL \ Debug: PYTHONPATH : C:\ Python27; c:\ myDLL \ Debug;
然后,从我的.py文件,我试图将其导入:各种
import getting_started1
print getting_started1.greet()
number = 11
print number, '*', number, '=', getting_started1.square(number)
我也从MYDLL进口getting_started1尝试,并从getting_started1进口*,和所有可能的组合。
任何人都可以告诉我我该怎么称呼我的模块?谢谢
编辑: 根据cgohlke,我应该有一个位于我的PYTHONPATH中的某个位置,当我在VS编译?这个文件是不存在的...我必须在VS2010中设置一些不同的东西吗?我有一个默认的win32 DLL项目。 但助推文档说“如果我们建立这个共享库,并把它放在我们的PYTHONPATH”,是不是Windows上的DLL共享库? ergo,DLL应该在PYTHONPATH中?
将同样适用于Visual Studio的2013 ,提升python2 1.55和python 2.7.9? – MMM