The python package is built using scikit-build and for now it requires Armadillo to be installed beforehand. Carma is installed as a git submodule and is specified to the latest release tag v.0.6.7. For more info on git submodules check this article -> https://git-scm.com/book/en/v2/Git-Tools-Submodules
The main blocker I see for now is that we need to be able to compile all the libraries using normal armadillo as opposed to RcppArmadillo for the python package. To begin with we can also make copies of the relevant files and replace RcppArmadillo with Armadillo, but this will not be a sustainable solution since we'll end up having the same C++ code everywhere twice. It shouldn't be that hard to refactor the code a bit and prevent that (I think).
Adding the main "plumbing" infrastructure for python C++ bindings using pybind11 and carma (equivalent to RcppArmadillo).
The following files/folders are examples only and will removed later:
The "plumbing" is based on this repo: https://github.com/ltsaprounis/python-cpp-experiments
The python package is built using scikit-build and for now it requires Armadillo to be installed beforehand. Carma is installed as a git submodule and is specified to the latest release tag v.0.6.7. For more info on git submodules check this article -> https://git-scm.com/book/en/v2/Git-Tools-Submodules
The main blocker I see for now is that we need to be able to compile all the libraries using normal armadillo as opposed to RcppArmadillo for the python package. To begin with we can also make copies of the relevant files and replace RcppArmadillo with Armadillo, but this will not be a sustainable solution since we'll end up having the same C++ code everywhere twice. It shouldn't be that hard to refactor the code a bit and prevent that (I think).