Skip to content

zpoint/Boost-Python-Examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Boost Python Examples



C++ Boost Python

Boost Installation with python3 support
  • OS Ubuntu 16.10

  • From source

    • Download the latest version here

    • Description of user-config.jam please refer to here

        tar -xzvf boost_1_65_1.tar.gz
        cd boost_1_65_1
      
        # sudo find / -name "python3.5m" # If you don't know where python3.5m is
        # which python3 # If you don't know your python3 install directory
        echo "using mpi ;
        using gcc :  : g++ ;
        using python : 3.5 : /usr/bin/python3 : /usr/include/python3.5m : /usr/local/lib ;" > ~/user-config.jam
      
        ./bootstrap.sh --with-python=/usr/bin/python3 --with-python-version=3.5 --with-python-root=/usr/local/lib/python3.5 --prefix=/usr/local
        sudo ./b2 install -a --with=all
        sudo ldconfig
      
  • From apt

    sudo apt-get install libboost-all-dev
    # link libboost_python3.so
    sudo find / -name "libboost_python-py35.so"
    # cd to where you find it
    cd /usr/lib/x86_64-linux-gnu/
    sudo ln -s libboost_python-py35.so libboost_python3.so
    
  • OS Mac

      brew install boost-python --with-python3
      # if your python version or lib path is different from mine, please change
      # INCLUDE_PATH and LIBPYTHON_PATH in makefile
    
      # INCLUDE_PATH:
      # shold be the path contains "pyconfig.h", below two command can help you find the path
      # sudo find / -name "pyconfig.h"
      # python3 -c "import sys; print('\n'.join(sys.path))"
    
      # LIBPYTHON_PATH:
      # on mac, with version python3.6, lib name is: libpython3.6.dylib
      # sudo find / -name "libpython3.6"
    
Demo
  • If you install from source, and you change the prefix path when install, you need also change the BOOST_INC and BOOST_LIB in makefile
  • My default python version is python3.5 on Ubuntu, python3.6 on Mac, if you want to use with python 2.7, change "PYTHON_VERSION" in makefile
python3 hello_ext
git clone https://github.com/zpoint/Boost-Python-Examples.git
cd Boost-Python-Examples/Examples/hello_ext
make

python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hello_ext
>>> hello_ext.greet()
'hello, world'
python2 hello_ext
git clone https://github.com/zpoint/Boost-Python-Examples.git
cd Boost-Python-Examples/Examples/hello_ext
vim makefile # change the first line "PYTHON_VERSION = None" to "PYTHON_VERSION = 2.7"
make

python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import hello_ext
>>> hello_ext.greet()
'hello, world'

About

Implementation of C++ Boost Python Examples, With python3.5+ support

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy