Я новичок в C ++, но использую Boost Python, чтобы разрешить доступ к функции C ++ в Python.
Я использовал для этого setup.py, но у меня были некоторые проблемы с его компиляцией в Python2.Python3, поэтому вместо этого использовалась команда, которая выполняется, чтобы я мог разрешить Python3.Это работает нормально при компиляции:
x86_64-linux-gnu-g++ -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-x86_64-3.6/test.o -lboost_python3 -I/home/me/my_dir/omp -o /home/me/my_dir/cpp_equity.cpython-36m-x86_64-linux-gnu.so
Но, когда я пытаюсь импортировать это в Python, происходит сбой с ImportError.
undefined symbol: _ZN3omp13CombinedRangeC1Ev\n'
CombinedRange
- это класс, определенный в CombinedRange.h
, который включен в h.файл, который включает в себя мой основной файл.
Есть ли что-то в связи, что я пропускаю?