次の構造の例があります。C++でpybind11ラッパーを使用するSegfault
を実行している時に├── CMakeLists.txt
├── ext
│ └── pybind11
└── main.cpp
CMakeLists.txt
cmake_minimum_required(VERSION 3.5)
project(notworking)
add_subdirectory(ext/pybind11)
add_executable(notworking
main.cpp)
target_link_libraries(notworking PRIVATE python3.6m)
target_link_libraries(notworking PRIVATE pybind11)
main.cppに
#include <pybind11/pybind11.h>
namespace py = pybind11;
int main() { py::object decimal = py::module::import("decimal"); }
そして今、
╰─ ./notworking
[1] 14879 segmentation fault (core dumped) ./notworking
このモジュールを正しくロードするには、何が欠けていますか?私はdocumentation、特にビルドシステムのセクションを精査しましたが、空になっています。
C++からpybind11で他のラッパーを使用していると、私の場合もそうです。