python - 通过 pybind11 使用 google/draco 作为 lib 构建

标签 python c++ pybind11

我的测试项目外观:

.
├── CMakeLists.txt
├── draco
├── pybind11
├── setup.py
└── src
    |-main.cpp

我正在用 pybind11 为 draco 编写 python 包装器 因为我是 C++ 的新手,所以我不知道如何将 draco 构建为共享库 这是我的简单 CMake.txt

cmake_minimum_required(VERSION 3.10.0)
project(test)

add_subdirectory(draco)
add_subdirectory(pybind11)
pybind11_add_module(test src/main.cpp )

main.cpp 中,我刚刚新建了一个 draco::Mesh 指针

我构建了我的测试项目。在Python中导入得到错误

test.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN5draco4MeshC1Ev

错误可能意味着我没有将 draco 库链接到 test 目标

为什么会出现这个问题?

最佳答案

您需要在 CMakeLists.txt 中使用 target_link_libraries 命令。

关于python - 通过 pybind11 使用 google/draco 作为 lib 构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58156808/

相关文章:

c++ - 如何在 map 中同时打印键和值?

c++ - Sprite 没有动画

c++ - 为什么numpy的累积量比手动C++的循环快得多?

c++ - 解释 static_cast "static_cast<void (Pet::*)(int)>"语法?

python - 如何列出 python 中存在的库?

用于循环导入的 python 解决方法

python - zsh :/usr/local/bin/youtube-dl: bad interpreter:/usr/local/opt/python/bin/python2. 7: 没有那个文件或目录

C++ std::equal —— 不测试大小相等的 2 个范围的理由是什么?

c++ - 如何 static_cast 一个指向 const 成员函数的指针?

python - 更改 Pandas 条形图中的错误条标记(Caplines)