OpenSfM
OpenSfM copied to clipboard
Deviations from the upstream pybind11
TLDR:
-
pybind_utils.hassume different template signatures than upstream - cmake links to
pybind11instead ofpybind11::module, confusing cmake sometimes to try and-lpybind11(which it needn't and which fails) instead of using the pybind11 cmake target - cmake links to
pybind11evenpybind11_add_moduletargets (these link automatically)
The pinned pybind11 submodule is relatively old. In the upstream pybind11 there already are provided some of the utilities from pybind_utils.h, like make_value_iterator, iterator_state, but they have different signatures (e.g. 5 template parameters against 4). I hoped to build OpenSfM without submodules with the (newer) pybind11 version pinned outside the repo, but this would require modifications to the template definitions
- Would you consider updating to the newer pybind11 before the next release?
- Do you need the in-tree pybind11 in the first place?