Rust FFI 编程中的Bindgen工具怎么用
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,本篇文章给大家分享的是有关Rust FFI 编程中的Bindgen工具怎么用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。bindgen
千家信息网最后更新 2025年02月01日Rust FFI 编程中的Bindgen工具怎么用我们来介绍 rust-bindgen 这个项目。项目地址为:https://github.com/rust-lang/rust-bindgen。可以看到,这是一个 Rust 官方孵化的项目,目前已经比较成熟。 本篇只是一个总体的介绍,并不是对 bindgen 项目的完整讲解,也不是对 bindgen tutorial 的全面翻译。因此,真正动手操作的时候,需要仔细阅读 Tutorial 原文和查阅相关的 API 。 bindgen 是一个能自动为 C(或 C++)库生成 Rust 绑定的辅助库和命令行工具。C++ (目前)的支持并不完整。 也就是说,bindgen 可以作为一个 crate,与 Cargo 的 build.rs 机制配合,根据 C/C++ 的头文件(.h, .hpp),在构建阶段,编译主体 Rust 代码之前,自动生成 Rust 绑定文件。具体,可查看示例: https://rust-lang.github.io/rust-bindgen/tutorial-0.html bindgen 还有另一种用法,它本身也提供一个命令行工具。执行:
便可安装。然后,在命令行下,使用
便可根据 C 头文件 但真实的场景远不如想象中这么纯洁。于是就有一堆可能的修补工作。bindgen 为我们提供了各种修补之法(这才是精华)。具体来说,有如下一些措施: 这些措施有的可以用在库的模式下,命令行模式下,以及在源代码(C)的注释中添加标注的模式下。有的三种都能覆盖,有的只能覆盖其中一种或两种。具体可在 https://rust-lang.github.io/rust-bindgen/customizing-generated-bindings.html 页面找到详细解释。 同时,bindgen 对 C 的 Union 和 Bitfields 的特性,也有对应的处理策略。这些在实际封装的过程中,可能会经常碰到。 bindgen 本身知识点,并不多。
本篇文章给大家分享的是有关Rust FFI 编程中的Bindgen工具怎么用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
bindgen 介绍
cargo install bindgen
bindgen input.h -o bindings.rs
input.h
动态生成 Rust 绑定文件 bindings.rs
。非常简单。白名单 黑名单 Opaque 对象 类型替换 其它
以上就是Rust FFI 编程中的Bindgen工具怎么用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
工具
命令
文件
项目
模式
知识
生成
编程
措施
更多
知识点
篇文章
C++
修补
工作
成熟
主体
也就是
也就是说
原文
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云计算网络技术与应用专科好学吗
软件开发 mac pro
提高网络安全指标措施
未知的数据库如何解决方法
华章网络安全
平谷区软件开发不二之选
择居网络技术有限公司电话
浪潮服务器的序列号
服务器硬盘怎么清洗
山东pdu服务器专用电源定制
408 数据库
如何做软件开发人员
哪款数据库免费
聊天记录会存在数据库表吗
华为芒麦6服务器在那找到
三级网络技术交换机配置命令
打电话未接通服务器是什么意思
湖南省疫情防控专题档案数据库
黄浦区银联数据库有哪些
新加坡服务器有什么好玩的app
数据库返回一行数据
网络技术岗怎么面试
邯郸工控软件开发服务费
元宇宙专题网络安全
UI跟数据库那个比较好
mysql数据库坏了
宣传网络安全为主题的手抄报
数据库技术初级考试辅导书书籍
张家港管理软件开发售后服务
服务器分配的虚拟机