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

做ppt的背景图片网站做网站网页兼容性

做ppt的背景图片网站,做网站网页兼容性,百度怎么免费推广,素材下载网站模板本文学习如何用deb打包的方式打包自己需要调用系统库的程序。 然后实现deb解包前后的脚本运行。 目录 承接上文: 删除上文遗留的.so文件: 终止ledlight进程: 目标解释: 创建项目结构: 创建control文件: 创…

本文学习如何用deb打包的方式打包自己需要调用系统库的程序。

然后实现deb解包前后的脚本运行。

目录

承接上文: 

删除上文遗留的.so文件:

终止ledlight进程:

目标解释:

创建项目结构:

创建control文件:

创建postinst文件:

 创建preinst文件:

构建Debian包:

结果展示:

 参考文章:


承接上文: 

 打包的程序代码结构、DEB的介绍、安装必要的DEB工具,都承接上文内容:

香橙派3B学习笔记13:deb 打包调用系统库与.so动态链接库的程序(部分失败)-CSDN博客

删除上文遗留的.so文件:

 承接上文的环境,libGPIO_LED.so文件是被手动复制到/usr/local/lib/ 目录的,这里先删去,以测试脚本能否将我的软件包中的 libGPIO_LED.so文件复制到 /usr/local/lib/使得程序能够正常运行。

cd /usr/local/lib/
sudo rm libGPIO_LED.so

 这里尝试运行 ./ledlight 的程序文件,会提示缺失 .so 了:

终止ledlight进程:

这时候如果在删除.so之前,可能ledlight任有后台在运行,如下彻底终止它进程:

ps aux | grep ledlight


sudo kill -15 2176 2178

目标解释:

有俩个文件:

ledlight程序文件,libGPIO_LED.so的动态链接库文件

通过deb打包,要实现解包时自动处理:

        1.将ledlight程序文件复制到/home/orangepi/APP

        2.将libGPIO_LED.so复制到 /usr/local/lib/

最终保证程序能够正常运行

创建项目结构:

/home/orangepi/ledlight-package/  ← 打包根目录
├── DEBIAN/                                ← 控制目录    (必须大写)
│   ├── control                              ← 包元数据文件
│   ├── postinst                             ← 安装后脚本(需可执行 权限755)
│   └── preinst                              ← 安装前脚本(需可执行 权限755)
├── ledlight                                   ← 主程序文件(权限755)
└── libGPIO_LED.so                    ← 库文件       (权限644)

(其中的cp复制文件操作示例,需要先cd到对应目录!)

创建APP目录:

cd /home/orangepi
mkdir APP
 

创建打包目录:

mkdir -p ledlight-package/DEBIAN

复制libGPIO_LED.so:

cp libGPIO_LED.so /home/orangepi/ledlight-package

chmod 644 /home/orangepi/ledlight-package/libGPIO_LED.so

复制程序:

cp ledlight /home/orangepi/ledlight-package

chmod 755 /home/orangepi/ledlight-package/ledlight

创建control文件:

在 DEBIAN 目录中创建 control 文件:

cd /home/orangepi/ledlight-package/DEBIAN/
nano control

Package: ledlight
Version: 1.0
Architecture: arm64
Maintainer: Your Name <your@email.com>
Description: LED控制程序安装到系统真实目录,非模拟目录

创建postinst文件:

nano postinst
 

#!/bin/sh
set -e# 获取包安装的临时目录
TEMP_DIR=$(dpkg -L ledlight | grep -m1 '^/.' | xargs dirname)# 安装文件
install -Dm755 "$TEMP_DIR/ledlight" "/home/orangepi/APP/ledlight"
install -Dm644 "$TEMP_DIR/libGPIO_LED.so" "/usr/local/lib/libGPIO_LED.so"# 更新库缓存
ldconfigexit 0
EOF

chmod 755 postinst
chmod 755 /home/orangepi/ledlight-package/DEBIAN/postinst

 创建preinst文件:

nano preinst

#!/bin/sh
set -e# 确保目标目录存在
mkdir -p /home/orangepi/APP /usr/local/libexit 0
EOF


chmod 755 preinst
chmod 755 /home/orangepi/ledlight-package/DEBIAN/preinst

构建Debian包:

cd /home/orangepi

dpkg-deb --build ledlight-package

结果展示:

sudo dpkg -i ledlight-package.deb

解包成功:

libGPIO_LED.so 成功被复制到usr/local/lib:

ledlight 成功被复制到 home/orangepi/APP :

运行成功:

cd /home/orangepi/APP
sudo ./ledlight

 参考文章:

深入了解 .deb 软件包:Linux 下的包管理基础-CSDN博客

http://www.dtcms.com/a/444202.html

相关文章:

  • 网站怎么做速排在线seo
  • 慈溪企业网站seo德州 网站建设
  • 网站建设宗旨是指网站域名起名
  • 网站树状结构图怎么做html5 响应式音乐网站
  • UART、TTL、RS-232 、 RS-485
  • 电力通俗名词解析8:CT和PT
  • 广东华星建设集团网站互联网推广模式
  • 濮阳网站管理咨询行业
  • 视频网站如何做盗链免费vps试用一年
  • 重庆云阳网站建设报价免费网络连接
  • 做gif动态图网站施工企业的工作分解结构
  • 手机端网站开发电子商务网站建设策划案
  • 各大网站响应生态建设描写做网站专业的句子
  • 外贸商城网站网站建设安全协议
  • 重庆做学校网站公司云南火电建设公司网站
  • 湛江师范学院网站开发技术wordpress怎么解密密码
  • 网站建设四步骤电商平台开发公司
  • 电子商务网站建设考试重点周口网站建设 网站制作 网络推广
  • ueditor是做网站的吗自适应 wordpress
  • 【ROS2学习笔记】rqt 模块化可视化工具
  • 广东网站设计费用泰州网站建设方案推广
  • 苏州网站优化找哪家网站开发课程百度云
  • 网站网页切换怎么做WordPress建站主机推荐
  • 找高权重的网站做外链dw旅游网站设计教程
  • 如何用个门户网站做销售在网站后台管理系统里产品说明怎么添加图片
  • 北京网站搭建哪家好自己怎么设计公司的logo
  • wordpress注册不seo的作用有哪些
  • 手机做网站用什么软件wordpress 搭建知识库
  • AI大事记8:深蓝与卡斯帕罗夫——符号主义 AI 的巅峰与局限(下)
  • 苏州做网站的单位网站公司市场营销方案