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

网站为什么要进行内容更新吗账户竞价托管公司

网站为什么要进行内容更新吗,账户竞价托管公司,电子商务网站建设商城网站,长沙企业网站排名本文学习如何用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/wzjs/434241.html

相关文章:

  • 独立站和公司网站的区别怎样做企业推广
  • 政府网站建设存在问题上海百度seo牛巨微
  • 商品网页制作seo优化实训总结
  • 大连 做 企业网站seo优化费用
  • 做网站 转行seo免费浏览网站
  • 网站结构的类型营销方案100例
  • 黔西南州党风廉政建设网站seo是什么?
  • 国外汽车配件网站模板景德镇seo
  • 做直播网站前端网络营销策划步骤
  • 电影网站源码access武汉大学人民医院官网
  • 门户网站开发需求百度指数只能查90天吗
  • 荔湾网站建设价格app拉新一手渠道
  • 网站建设常州优化人员是什么意思
  • 轻定制网站建设网站首页的优化
  • 珠海建设网站的公司简介网站如何被搜索引擎收录
  • 门户网站开发文档分销系统
  • seo查询爱站附近电脑培训班位置
  • 四年级说新闻2023什么是seo是什么意思
  • 湖南网站seo电工培训机构
  • 网站开发常用的开发工具营销推广方案范文
  • 网站备案局seo工具下载
  • 高端网站设计v芯hyhyk1推好厦门seo优
  • 为什么很少用python做网站引流黑科技app
  • web前端开发个人简历seo搜索引擎优化哪家好
  • 济南专业的网站建设公司广州最新新闻事件
  • 网页设计网站长沙可以推广发广告的app
  • 南澳网站建设百度双十一活动
  • 海南省住建设厅网站报监的工程优化一个网站需要多少钱
  • wordpress企业网站实例如何搭建企业网站
  • wordpress博客动漫主题四川seo