当前位置: 首页 > news >正文

眉山网站建设长沙百度开户

眉山网站建设,长沙百度开户,贵阳门户网站,政府网站建设应急预案目录 写在前面准备1、pybind11获取源码编译安装 2、conda demo官方源码修改CMakeLists.txt编译生成安装测试 参考完 写在前面 1、本文内容 有时候我们需要用c代码,供python调用,本文提供将c库封装成python接口的方法,并将库打包成可通过pip安…

目录

  • 写在前面
  • 准备
    • 1、pybind11
      • 获取源码
      • 编译安装
    • 2、conda
  • demo
    • 官方源码
    • 修改CMakeLists.txt
    • 编译生成
    • 安装
    • 测试
  • 参考

写在前面

1、本文内容
有时候我们需要用c++代码,供python调用,本文提供将c++库封装成python接口的方法,并将库打包成可通过pip安装的wheel安装包

2、平台/环境
通过cmake构建项目,跨平台通用;pybind11
3、转载请注明出处:
https://blog.csdn.net/qq_41102371/article/details/132046046

准备

1、pybind11

编译安装pybind11

获取源码

mkdir pybind
cd pybind
git clone https://github.com/pybind/pybind11.git

编译安装

cmake -DCMAKE_INSTALL_PREFIX=D:/carlos/install/pybind11 -S ./pybind11 -B ./build
cmake --build ./build --config Release --target install

2、conda

安装conda环境

demo

官方源码

mkdir pybind_test
cd pybind_test
git clone https://github.com/pybind/cmake_example.git
cd cmake_example

修改CMakeLists.txt

注释掉add_subdirectory,通过find package的方式找到上面安装的pybind11

cmake_minimum_required(VERSION 3.4...3.18)
project(cmake_example)# add_subdirectory(pybind11)
set(pybind11_DIR D:/carlos/install/pybind11/share/cmake/pybind11)
find_package(pybind11 REQUIRED)pybind11_add_module(cmake_example src/main.cpp)# EXAMPLE_VERSION_INFO is defined by setup.py and passed into the C++ code as a
# define (VERSION_INFO) here.
set(EXAMPLE_VERSION_INFO "0.0.1")
target_compile_definitions(cmake_examplePRIVATE VERSION_INFO=${EXAMPLE_VERSION_INFO})

编译生成

python .\setup.py bdist_wheel

安装

编译好之后,会在cmake_example目录下生成build, cmake_example.egg-info, dist三个文件夹,我们要的wheel安装包在dist中

pip install ./dist/cmake_example-0.0.1-cp37-cp37m-win_amd64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

其中cmake_example-0.0.1-cp37-cp37m-win_amd64.whl根据当前python环境不同而不同,记得检查自己的文件名

测试

官方也提供了测试代码,在./tests/test_basic.py

import cmake_example as mdef test_main():assert m.__version__ == "0.0.1"assert m.add(1, 2) == 3assert m.subtract(1, 2) == -1

测试

python ./tests/test_basic.py

如果前面有问题导致安装不成功,会出现import失败
在这里插入图片描述
如果安装成功,则不会打印任何东西

参考

https://github.com/pybind/cmake_example
https://pybind11.readthedocs.io/en/stable/compiling.html
https://blog.csdn.net/weixin_44943389/article/details/131547952
https://blog.csdn.net/u011622208/article/details/111302047

主要做激光/影像三维重建,配准、分割等常用点云算法,技术交流、咨询可私信

http://www.dinnco.com/news/17160.html

相关文章:

  • 招聘网站简历数据分析怎么做百度 官网
  • 唯美谷-网站建设市场营销策划方案范文
  • 个人网站备案成功后怎么做重庆排名seo公司
  • 英文做网站2021年度关键词有哪些
  • 最专业的微网站开发口碑营销策划方案
  • 福田专业网站建设公司微博营销
  • 新开传奇网站发布网中变网络流量分析工具
  • 公司里面有人员增减要去哪个网站做登记seo研究
  • 旅游门票做的最好的是哪个网站百度导航最新版本下载安装
  • 网站不允许上传文件2345系统导航
  • 成都网站建设天府软件园国际军事最新消息今天
  • 做一家购物网站要多少钱河北百度推广客服电话
  • 天津 网站建设百度seo外包
  • 网站诊断从哪里开始aso优化的主要内容
  • 网站地图 百度德芙巧克力软文推广
  • 做网站需要了解网站运营方案
  • 十大垂直电商平台天津seo外包平台
  • java可以做网站后台培训机构查询网
  • 成都建站网上卖产品怎么推广
  • 专业的集团网站建设搜资源的搜索引擎
  • 聚美优品的网站建设vivo应用商店
  • 长沙seo公司靠谱吗seo排名优化教学
  • 网站建设使用什么软件宝安网站建设
  • 深圳华宫建设集团网站河南seo外包
  • 商城网站制作教程成都新闻最新消息
  • 网站备案不成功的原因有哪些百度推广投诉中心
  • 网站开发技术论文深圳网络营销软件
  • 住建部2022年执行的新规范seo优化的方法
  • 合肥网站制作魔贝课凡seo课程好吗
  • 四川大良网站建设百度云网盘资源