linux python 导入,Python导入&使用CDLI(与一个Linux .so文件)

这工作确定这样做的:

cl /LD A.cpp B.cpp C.pp 在Windows环境

,设置包括路径提升,cryptopp来源和cryptopp库后。

现在我正在尝试在linux中做同样的事情,创建一个.so文件来通过python2.5上的ctypes导入。 我所做的:

gcc -Wall -Wextra -pedantic A.cpp B.cpp C.cpp /usr/lib/libcryptopp.so -shared -o /test/decoding.so

,并在创建这样的对象确定。如果删除“共享”编译是好的,但在那里停止作为主要(显然;))。当然也有libcryptopp.so。

但是,当我去python并导入“so”文件时,它说该属性没有对象“解密”,“加密”或任何我放在那里。使用dir对象来确认它们不在那里。

外部功能在A.cpp定义为:

int encrypt (params...)

//..

return num;

int decrypt (params...)

//..

return num;

使用也尝试:

extern "C" encrypt (params...)

.....

谁能告诉我什么,我做错了吗?

在此先感谢!

抹布

+0

你是如何“导入”.so库?使用ctypes? –

2009-11-22 03:59:08

+0

您可以在.so库上使用'nm'实用程序来显示它公开的名称。 –

2009-11-22 04:01:38

+0

'from ctypes import cdll mydll = cdll.LoadLibrary('/ test/decoding。所以') mydll' 纳米犯规表明他们要么 –

2009-11-22 04:07:17

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值