simple example of using pybind and eigen
Памятка для себя о том, как собрать и запустить этот пример в anaconda3 на машине с Windows 10/11 и компилятором MinGW. 0. Компилятор MinGW установлен, путь к его директории запуска прописан в переменную окружения Path.
- Запустить командную строку ananconda3.
- pip install pybind11
- cd pybind-example
- mkdir build && cd build
- Создать batch файл run.bat с содержимым: cmake -G "MinGW Makefiles" -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DCMAKE_PREFIX_PATH=X:/.../anaconda3/Lib/site-packages/pybind11 -DEigen3_DIR=X:/.../anaconda3/Lib/site-packages/eigen/build ..
- Перейти в директорию X:/.../anaconda3/Lib/site-packages/ и склонировать туда исходники eigen3: git clone https://gitlab.com/libeigen/eigen.git
- Создать внутри eigen поддиректорию build : mkdir X:/.../anaconda3/Lib/site-packages/eigen/build
- Создать внутри build batch файл run.bat с содержимым: cmake -G "MinGW Makefiles" -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc ..
- Запустить этот run.bat.
- Затем mingw32-make.exe. В ....eigen/build будет доформировано все, что нужно.
- Снова вернуться в директорию pybind-example/build и запустить там тот run.bat.
- mingw32-make.exe
- cd ..
- Запустить пример: python test.py
- Библиотеки C++-runtime должны быть в директории с собранной библиотекой в build (если система их не видит самостоятельно).