Обнаружена ошибка при соединении C ++ и pypy с cppyy.

Я написал заголовочный файл класса, как это, все шаги следуют за этой страницей 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

Решение

(решено после обсуждения в списке рассылки pypy)

Проблема заключалась в том, что "libMyClassDict.so" ищется в стандартных путях системы (не включая "."). Ты должен сказать "./libMyClassDict.so",

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]