python C++扩展的一个问题

phoenixlwp 2011-06-07 10:57:37
之前写了一个python的Extension,打包后放到工作目录下,然后用python import里面的模块,却总提示找不到指定的模块,求救啊:(
我的代码如下:
C++代码:
#include <Python.h>
#include "Core/iptcore.h"
#include "Core/def.h"
#include <string>
using namespace std;

static PyObject* LoadCore(PyObject *self,PyObject *args){
IptLibfiles libFiles = {0};
if(!PyArg_ParseTuple(args,"ssssssssssss",libFiles.zi_file,libFiles.cz_file,libFiles.us_file,
libFiles.ft_file,libFiles.en_file,libFiles.en_us_file,libFiles.bh_file,libFiles.cell_stub_file,
libFiles.wb_file,libFiles.var_file,libFiles.cp_file,libFiles.sym_file))
return NULL;
int res = ipt_core_load(&libFiles);
return PyLong_FromLong(res);
}

static PyObject* UnLoadCore(PyObject *self,PyObject *args){
PLINT32 res = ipt_core_unload();
return PyLong_FromLong(res);
}


static PyMethodDef _corePluginMethods[] = {
{
"LoadCore",LoadCore,METH_VARARGS,"Load the Core."
}
,{
"UnLoadCore",UnLoadCore,METH_VARARGS,"Unload the core."
}
,{
NULL,NULL,0,NULL
}
};

static struct PyModuleDef _corePluginModule = {
PyModuleDef_HEAD_INIT,
"_corePlugin",
NULL,
-1,
_corePluginMethods
};


PyMODINIT_FUNC PyInit__corePlugin(void){
return PyModule_Create(&_corePluginModule);
}

setup.py:
from distutils.core import setup, Extension

module1 = Extension(
'_corePlugin'
,sources = ['CorePlugin.cpp','Core\\iptc.c','Core\\iptcore.c','Core\\array.c','Core\\bh.c','Core\\candarr.c','Core\\category.c'
,'Core\\cell.c','Core\\contacts.c','Core\\dmem.c','Core\\en.c','Core\\iptfile.c','Core\\iptlib.c','Core\\llist.c'
,'Core\\oldch3.c','Core\\phrase.c','Core\\py.c','Core\\py_sentence.c','Core\\py_sys.c','Core\\py_us.c','Core\\stack.c'
,'Core\\sym.c','Core\\utils.c','Core\\uz.c','Core\\var.c','Core\\wb.c','Core\\widechar.c']
,include_dirs = ['C:\\Program Files\\Microsoft Visual Studio 8\\VC\\include','Core\\']
,library_dirs = ['C:\\Program Files\\Microsoft Visual Studio 8\\VC\\lib']
,define_macros = [('WIN32','1')]
)

setup(name = 'corePlugin',version = '1.0',description = 'This is the demo package', ext_modules = [module1])


在python命令行里:
import corePlugin
import _corePlugin
都不行,怎么办啊,之前写过一个demo都是正常的,到这个就不行了……
...全文
67 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
phoenixlwp 2011-06-07
  • 打赏
  • 举报
回复
模块名是_corePlugin,模块放在了当前路径下,程序当前路径中没有中文,sys.path里也包含了python所在目录,应该不是这些问题,之前的一个demo都pass了……
iambic 2011-06-07
  • 打赏
  • 举报
回复
自己的模块名是什么?模块在什么地方?程序的当前路径是什么?sys.path是什么?仔细检查。

37,742

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧