如何在ubuntu下安装libgpiod库

以下是关于如何在ubuntu下安装libgpiod库的两种安装方式以及遇到ubuntu存在多个工具链导致编译失败的解决方法。

如果想要自由选择使用不同版本的libgpiod,可以选择手动编译安装方式,系统安装默认1.6.3版本(ubuntu22.04)。

手动编译安装

1、在github上下载要安装的对应版本的库文件的包

2、在ubuntu下解压并进入libgpiod-2.2.x的路径下

3、运行如下命令安装好配置工具

sudo apt install autoconf automake libtool pkg-config perl autotools-dev //安装工具链依赖
sudo apt-get install autoconf-archive //安装拓展宏集合

4、运行libgpiod-2.2.x路径下的 autogen.sh

./autogen.sh

如果出现以下错误:

错误提示显示找不到需要的依赖,那可能是因为你的unbuntu可能安装了多个编译工具链,通过sudo apt-get install安装的autoconf、automake等工具是x86_64系统版本,安装在usr/bin/等系统路径下,但你在PATH中优先设置交叉编译工具链的路径,例如我使用的是aarch64的工具链,由于之前在PATH中优先设置了交叉编译工具的路径:

而工具链可能自带了一个aarch64版本的autoreconf,运行./autogen.sh的时候libgpiod-2.2.x会尝试调用工具链内部的Perl模块,但模块路径不完整从而导致错误。

对此,可以使用以下解决方法:

在运行./autogen.sh前,临时将系统路径放在前面:

export PATH=/usr/bin:/usr/sbin:$PATH
./autogen.sh

编译完后再恢复工具链路径:

export PATH=/opt/aarch64-rk3568-linux-gnu/bin:$PATH

编译成功后的包长这样:

接下来根据个人需求选择安装路径,这里我为了避免污染系统,就自定义了一个路径存放,如果仅用于本地开发测试的也可以这样做,全局安装则需要安装到/usr/local目录下:

./configure --prefix=安装路径
make -j4
make install

安装后包长这样:

后续在工程中如果需要使用到libgpiod的相关函数接口,就直接把这个包复制进工程里面就可以了。

系统安装

sudo apt update //更新软件包列表
sudo apt install libgpiod //安装系统仓库中预编译好的 libgpiod 库及其依赖(如动态库、工具等)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/93600.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/93600.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

qt vs2019编译QXlsx

1、安装ActivePerl2、打开pro文件,直接编译即可第一个简单实例:#include "xlsxcellrange.h" #include "xlsxchart.h" #include "xlsxchartsheet.h" #include "xlsxdocument.h" #include "xlsxrichstring.h…

计算机存储器分类和层次结构详解

存储器是计算机系统的核心部件之一,其核心功能是存储程序(指令)和数据,是冯诺依曼体系结构“存储程序”概念的物质基础。它直接关系到计算机系统的性能、容量和成本。 存储器核心内容总览表分类维度存储器层级技术实现速度容量成本…

通过rss订阅小红书,程序员将小红书同步到自己的github主页

title: 通过rss订阅小红书,程序员将小红书同步到自己的github主页 tags: 个人成长 categories:杂谈最近在做一些新的尝试,把文本的内容转化为漫画和图片,方便大众阅读,恰好小红书很适合分发这些内容,于是我开通了小红书…

麒麟KylinOS V10-SP3 安装FastGPT

1. 操作系统环境CPU:20核 Xeon(R) Platinum 8457C 内存:64GB GPU:4090 操作系统:KylinOS-V10-SP32. 安装docker、docker-compose、fastgpt下载安装docker、docker-compose1. 下载docker docker 下载地址: https://do…

前端/在vscode中创建Vue3项目

Contenthtml input元素添加css样式使用js添加交互按钮点击提示输入框字符计数使用 npm 来管理项目包安装 Node.js初始化项目安装依赖包创建一个基于 Vite 的 Vue 项目创建项目进入项目目录安装依赖调用代码格式化工具启动开发服务器在浏览器中访问html input元素 <input ty…

HiSmartPerf使用WIFI方式连接Android机显示当前设备0.0.0.0无法ping通!设备和电脑连接同一网络,将设备保持亮屏重新尝试

在使用HiSmartPerf使用WIFI方式连接Android机时&#xff0c;如果出现无法ping通0.0.0.0的情况&#xff0c;可以尝试以下步骤解决问题&#xff1a;问了一下AI&#xff0c;给出的解答如下&#xff1a; 检查网络连接 &#xff1a;确保设备和电脑连接到同一局域网的Wi-Fi。可以在手…

SpringWeb是什么东西?

SpringWeb是个什么东西&#xff1f;SpringWeb是一个Java开发Web项目时的Web层框架。所谓Web层&#xff0c;就是直接和用户打交道的框架&#xff0c;用户(User)也就是顾客&#xff0c;顾客就是上帝&#xff0c;我们说是Web项目&#xff0c;通常也就是说B/S架构的项目&#xff0c…

docker+nginx+keepalived+openappsec+web ui+crowdsec部署安全代理

docker+nginx+keepalived+openappsec+web ui+crowdsec部署安全代理 一、环境介绍 二、基础环境安装 1、优化系统参数 2、安装docker 3、创建容器网络 4、安装测试容器(可选) 三、安装nginx 1、拉取镜像 2、创建映射目录 3、准备默认配置文件 4、证书文件准备 5、启动nginx容器…

自动驾驶中安全相关机器学习功能的可靠性定义方法

摘要当前标准无法涵盖高自动化驾驶中基于机器学习功能的安全需求。由于神经网络的不透明性&#xff0c;一些自动驾驶功能无法按照 V 模型进行开发。这些功能需要对标准进行扩展。本文聚焦这一空白&#xff0c;为这类功能定义了功能可靠性&#xff0c;以帮助未来的标准控制基于机…

css实现圆角+边框渐变+背景半透明

ui小姐姐经常搞一些花里胡哨的东西&#xff0c;圆角边框渐变背景半透明&#xff0c;虽然每个都可以弄&#xff0c;但是合在一起真的不好弄&#xff0c;主要是因为通过border–image设置的边框渐变&#xff0c;无法使用圆角&#xff0c;下面是自己搜索整理的一些可以的方案。 方…

tree组件(几种不同分叉树Vue3)

效果图&#xff1a; 基础树组件&#xff08;本人博客里面有&#xff09; https://blog.csdn.net/xfy991127/article/details/140346861?spm1001.2014.3001.5501 下面是工作需求改造后 父组件 <template><div class"go-JJTree" id"tree-scroll&quo…

百度智能云x中科大脑:「城市智能体」如何让城市更会思考

近日&#xff0c;2025中关村论坛系列活动——中关村人工智能与未来城市论坛在中关村国家自主创新示范区展示中心举办。论坛上&#xff0c;发布了应用范式创新升级成果、智能体产品、可信数据空间成果等。 中科大脑联合百度智能云等伙伴共同打造并发布21个智能体产品&#xff0c…

在职老D渗透日记day16:sqli-labs靶场通关(第24关)二次注入 sqlmap自动注入没跑出来。。。

5.24.2.sqlmap自动注入第一个&#xff1a;登录页面&#xff08;1&#xff09;pb抓取http头POST /sqli-labs/Less-24/login.php HTTP/1.1 Host: 192.168.10.106 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0 Accept: text/ht…

Fanuc机器人EtherCAT通讯配置详解

1、EtherCAT简介EtherCAT&#xff0c;这一基于以太网的现场总线系统&#xff0c;以其开放架构和高速性能著称。CAT代表的是控制自动化技术&#xff08;Control Automation Technology&#xff09;的缩写&#xff0c;彰显了其在工业自动化领域的核心地位。作为确定性的工业以太网…

超酷炫的Three.js示例

今天写一个超级酷炫的Three.js示例&#xff0c;以下是文件源代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-sca…

从零开始大模型之实现GPT模型

从零开始大模型之从头实现GPT模型1.大语言模型整体架构2 大语言的Transformer模块2.1 层归一化2.2 GELU激活函数2.3 前馈神经网络2.4 快捷连接3 附录3.1 anacondapython环境搭建1.数据预处理&#xff1a;原始数据进行词元化&#xff0c;以及通过&#xff0c;依据词汇表生成ID编…

[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络

链接&#xff1a;https://github.com/byliutao/1Prompt1Story 这个项目是一个基于单个提示生成一致文本到图像的模型。它在ICLR 2025会议上获得了聚焦论文的地位。该项目提供了生成一致图像的代码、Gradio演示代码以及基准测试代码。 主要功能点: 使用单个提示生成一致的文本…

【GitHub开源AI精选】Sitcom-Crafter:北航联合港中文等高校打造的剧情驱动3D动作生成系统

系列篇章&#x1f4a5; No.文章1【GitHub开源AI精选】LLM 驱动的影视解说工具&#xff1a;Narrato AI 一站式高效创作实践2【GitHub开源AI精选】德国比勒费尔德大学TryOffDiff——高保真服装重建的虚拟试穿技术新突破3【GitHub开源AI精选】哈工大&#xff08;深圳&#xff09;…

智和信通全栈式运维平台落地深圳某学院,赋能运维管理提质提效

深圳某学院校园内信息化设备众多&#xff0c;网络环境复杂&#xff0c;使得网络管理工作面临着诸多难题与挑战。为保障校园网络能够稳定、高效地运行&#xff0c;学院亟须构建一套集高效、智能、协同于一体的网络运维平台。 对运维平台的期望包括&#xff1a; 实现校园内教学…

开疆智能Ethernet转ModbusTCP网关连接测联无纸记录仪配置案例

本案例是通过Ethernet转ModbusTCP网关将记录仪数据传送到欧姆龙PLC&#xff0c;具体操作过程如下。欧姆龙PLC配置首先打开主站组态软件“Sysmac Studio”并新建项目。设置PLC的IP地址点击工具-Ethernet/IP连接设置&#xff0c;在弹出的选个框内选择显示EDS库添加网关eds文件开始…