尝试桥接 usr/local/include 中的 yices 库时 Pybind11 出现分段错误
Segmentation fault in Pybind11 when trying to bridge yices library in usr/local/include
我正在尝试使用 pybind11 将我的 C++ 代码与 python 桥接起来。我有 example.cpp 文件,它包含 yices.h。 yices.h 在 usr/local/includes 文件夹中。
#include <pybind11/pybind11.h>
#include "yices.h"
int add(int i, int j) {
yices_init();
return i + j;
}
namespace py = pybind11;
PYBIND11_MODULE(example, m) {
// optional module docstring
m.doc() = "pybind11 example plugin";
// define add function
m.def("add", &add, "A function which adds two numbers");
}
当我尝试 test.py 时出现分段错误。如何 link yices.h 使用 pybind11?
from example import add
这是 cmake 文件
cmake_minimum_required(VERSION 2.8.12)
project(example)
find_package(PythonLibs)
include_directories(${PYTHON_INCLUDE_DIRS})
add_subdirectory(pybind11)
pybind11_add_module(example example.cpp)
您忘记使用 gmp
和 yices
来 link:
target_link_libraries(example PUBLIC yices gmp)
我正在尝试使用 pybind11 将我的 C++ 代码与 python 桥接起来。我有 example.cpp 文件,它包含 yices.h。 yices.h 在 usr/local/includes 文件夹中。
#include <pybind11/pybind11.h>
#include "yices.h"
int add(int i, int j) {
yices_init();
return i + j;
}
namespace py = pybind11;
PYBIND11_MODULE(example, m) {
// optional module docstring
m.doc() = "pybind11 example plugin";
// define add function
m.def("add", &add, "A function which adds two numbers");
}
当我尝试 test.py 时出现分段错误。如何 link yices.h 使用 pybind11?
from example import add
这是 cmake 文件
cmake_minimum_required(VERSION 2.8.12)
project(example)
find_package(PythonLibs)
include_directories(${PYTHON_INCLUDE_DIRS})
add_subdirectory(pybind11)
pybind11_add_module(example example.cpp)
您忘记使用 gmp
和 yices
来 link:
target_link_libraries(example PUBLIC yices gmp)