프로젝트

일반

사용자정보


Boost python Build


boost python

windows

boost 빌드

bootstrap.bat 실행해서 project-config.jam 파일 생성 & 수정

import option ;

using msvc ;
using python : 3.6 : C:\Users\moon_hyunsick\AppData\Local\Programs\Python\Python36 : : : 64 ;

option.set keep-going : false ;

아래 명령으로 빌드 실행

b2 -j8 --toolset=msvc-14.1 --build-type=complete architecture=x64 address-model=64 stage

ubuntu

python 설치

  • apt-get install python3.6-dev
  • 뒤에 -dev를 붙이지 않으면 boost 빌드 중 pyconfig.h 못 찾는다고 에러 뜸

boost 빌드

  • python 버전 명시하면서 bootstrap 실행해서 project-config.jam 생성하기
    • ./bootstrap.sh --with-python=python3.6
    • ./b2 실행해서 빌드

eclipse 프로젝트 설정

include

usr/include/python3.6

usr/local/boost (boost 소스 위치)

library

boost_python3

python3.6m

/usr/local/boost/stage/lib

/usr/local/lib

Linker - shared library setting : shared check

  • C++ - Miscellaneous : -fPIC check

  • boost_python의 동적 라이브러리 위치 지정 필요

    • /usr/local/lib 에 복사하고.. sudo ldconfig 명령으로 링크 확인함
    • ldd 로 dependency 확인
    • /etc/ld.so.conf.d/ 폴더에서 *.conf 를 읽어서 라이브러리를 탐색하기 때문에 boost_python.conf를 만들어야 할지 고려해 보자

주의 사항

  • ImportError: dynamic module does not define init function (initboost_python_test)
    • python2 버전 파이썬 실행파일로 python3 버전의 파이썬 모듈을 실행했을 때 발생하는 에러... 내 시간.. -_ ㅜ
    • 의도치 않게 python2python3가 함께 설치되어 있을 수 있기 때문에 주의