我正在尝试将使用C++脚本创建的pybind11模块导入到python中。目录结构是:
pybind_test:
main.cpp
build
CMakeLists.txt
test.py
pybind11 (github repo clone)它成功地构建并创建了文件module_name.cpython-39-darwin.so。然而,当运行test.py时,我得到:
File "../test.py", line 2, in <module>
from build.module_name import *
ImportError: No module named build.module_name我的CMakeLists文件:
cmake_minimum_required(VERSION 3.4...3.18)
set(CMAKE_CXX_STANDARD 17)
project(pybindtest)
add_subdirectory(pybind11)
pybind11_add_module(module_name main.cpp)我如何像普通的python模块一样将这个模块导入python?
发布于 2022-04-29 21:53:49
正如您注意到的,编译后的库必须位于Python可执行文件可访问的路由(就文件路径而言)(这是通过将test.py移动到编译库所在的构建目录实现的)。您还可以将编译后的库移动到您的Python的site-packages文件夹中,在那里存储其他模块。
https://stackoverflow.com/questions/72062898
复制相似问题