[PYTHON] 부스트 파이썬 안녕 프로그램에서 가져 오기 오류
PYTHON부스트 파이썬 안녕 프로그램에서 가져 오기 오류
using namespace boost::python;
struct World{
void set(std::string msg) { this->msg = msg; }
std::string greet() { return msg; }
std::string msg;
};
BOOST_PYTHON_MODULE(hello)
{
class_<World>("World")
.def("greet", &World::greet)
.def("set", &World::set)
;
}
컴파일하고 빌드하십시오.
~/boost$ g++ -fPIC -I/usr/include/python2.6 -c hello.cpp
~/boost$ g++ -shared hello.o -o hello.so
하지만 Python 쪽에서 가져올 때 오류가 발생했습니다.
>>> import hello.so
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: ./hello.so: undefined symbol: _ZNK5boost6python7objects21py_function_impl_base9max_arityEv
>>>
아무도 나를 도울 수 있습니까? 미리 감사드립니다.
해결법
-
==============================
1.Boost Python에서 "No such file or directory"오류를 통해이를 해결했습니다.
Boost Python에서 "No such file or directory"오류를 통해이를 해결했습니다.
g++ -c -fPIC hello.cpp -o hello.o g++ -shared -Wl,-soname,hello.so -o hello.so hello.o -lpython2.6 -lboost_python
나를 위해 속임수를했다. 나는 이것이 지금 약 30 분 동안 이것으로 고투하고 있었던 것에 따라 이것이 가능한 한 명료하다라고 생각한다;
-
==============================
2.오, 방금이 게시물을 보았습니다.
오, 방금이 게시물을 보았습니다.
문제 해결
-
==============================
3.여기 다른 게시물과 동일
여기 다른 게시물과 동일
g++ -c -fPIC hello.cpp -o hello.o g++ -shared -Wl,-soname,hello.so -o hello.so hello.o -lpython2.6 -lboost_python
그러나 나는 "-lpython2.6 -lboost_python"의 입장의 중요성을 강조하고 싶다. 입력 파일 (hello.o) 앞에 입력하면 무시됩니다 (최종 hello.so에 연결되지 않음). 이것은 g ++ (Ubuntu / Linaro 4.6.3-1ubuntu5)에서 적어도 사실입니다.
간단하게하려면 http://ubuntuforums.org/showthread.php?t=496287 suggested :
g++ <.cpp or .o file(s)> [LDFLAGS] [LIBS] -o [appname]
-
==============================
4.나는 똑같은 문제를 겪었고 수업 시간에 생성자가 누락되었다는 사실이 밝혀졌습니다.
나는 똑같은 문제를 겪었고 수업 시간에 생성자가 누락되었다는 사실이 밝혀졌습니다.
from https://stackoverflow.com/questions/1780003/import-error-on-boost-python-hello-program by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] Python : Excel 2007+ 파일 (.xlsx 파일)에 쓰기 (0) | 2018.11.24 |
---|---|
[PYTHON] 프로그램을 실행하면 Tkinter 버튼 명령이 활성화됩니까? (0) | 2018.11.24 |
[PYTHON] 인코딩은 "ascii"코덱이 문자를 인코딩 할 수 없음을 나타냅니다. 서수는 범위에 없습니다 (128) " (0) | 2018.11.24 |
[PYTHON] 디렉토리의 파일 이름을 오름차순으로 정렬 [duplicate] (0) | 2018.11.24 |
[PYTHON] QWidget 배경색을 설정하는 방법? (0) | 2018.11.24 |