Skip to content
efifogel edited this page Mar 27, 2019 · 120 revisions

About CGAL TAU Python Bindings

This repository contains software for binding CGAL TAU components (written in C++) with Python. In particular it contains source code for the bindings, examples, tests, and benchmarks.

Installing

Naturally, you need to install Python and CGAL before attempting to use the bindings.

Python & Pip

We use Python 3.

Ubuntu

Install Python via the standard apt-get installation procedure. Install Pip once via a dedicated procedure and then upgrade via Pip. Install Python modules via Pip.

#!bash

# Install Python 3
> sudo apt-get install python3
# Verify
> python3 --version
# Set up your system to build binary Python packages
> sudo apt-get install -y python3-dev
# Install Pip
> curl -LO https://bootstrap.pypa.io/get-pip.py
> python3 get-pip.py --user
# Upgrade (not really necessary---already up-to-date)
> pip3 install -U pip --user
# Verify
> pip3 --version
> which pip3
# Install popular Python packages
> pip3 install --user numpy
> pip3 install --user pipenv
> pip3 install --user pytest
> pip3 install --user pybind11

We have compared three different procedures to create Python bindings, namely:

  1. **Boost Python **
  2. Pybind11
  3. **Swig **

In order to use Boost Python you need to install it. Boost is a dependency of CGAL. When you install CGAL, it is recommended installing all Boost components. If not installed already though, install the Python component python35.

Benchmarks

Bindings

Tests

Clone this wiki locally