使用cppyy连接C ++和pypy时遇到错误

时间:2013-05-23 11:53:20

标签: c++ pypy

我写了这样的类头文件,所有步骤都在此页cppyy

之后
class MyClass {
public:
    MyClass(int i = -99) : m_myint(i) {}

    int GetMyInt() { return m_myint; }
    void SetMyInt(int i) { m_myint = i; }

public:
    int m_myint;
};

然后编译它

$ genreflex MyClass.h
$ g++ -fPIC -rdynamic -O2 -shared -I$REFLEXHOME/include MyClass_rflx.cpp -o libMyClassDict.so -L$REFLEXHOME/lib -lReflex

加载到pypy-c

$ pypy-c
>>>> import cppyy
>>>> cppyy.load_reflection_info("libMyClassDict.so")

然后我收到了这个错误

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
RuntimeError: libMyClassDict.so: cannot open shared object file: No such file or directory

任何人都遇到过这个问题,请帮帮我!

1 个答案:

答案 0 :(得分:1)

(在pypy邮件列表中讨论后解决)

问题在于"libMyClassDict.so"在系统的标准路径中查找(不包括".")。你需要说"./libMyClassDict.so"