linux打包qt程序为deb包,并在/etc/ld.so.conf中修改内容
时间: 2024-06-03 16:10:30 浏览: 138
好的,可以参考以下步骤来打包qt程序为deb包,并在/etc/ld.so.conf中修改内容:
1. 在Qt Creator中选择“发布”选项,选择“构建deb程序包”。
2. 在“构建deb程序包”对话框中,选择适当的目标,如i386或amd64等。
3. 设置版本号,你可以设置主版本号、次版本号和修订号。
4. 在“构建deb程序包”对话框中,对控件进行必要的设置,例如对程序的描述、作者等进行填写。
5. 构建deb程序包。
6. 安装所创建的包。
7. 打开/etc/ld.so.conf文件,找到文件最后一行。
8. 在这一行下方添加以下内容:/opt/{你的程序目录}。
9. 运行命令sudo ldconfig。
现在你应该可以在运行你的Qt程序时看到该程序已被添加到动态链接器缓存中,并且可以成功运行该程序。
相关问题
linux打包qt程序为deb包,并设置deb包安装中修改/etc/ld.so.conf的内容
好的,针对您的问题,以下是一种打包 Qt 程序为 DEB 包并修改 /etc/ld.so.conf 的方法。
1. 首先,在您的代码目录中创建一个文件夹,并将您的 Qt 程序放在其中。
2. 在代码目录中创建一个 DEBIAN 文件夹。在其中创建一个 control 文件,用于存储 DEB 包的元数据信息。以下是一个 control 文件示例:
```
Package: your-package-name
Version: 1.0
Section: misc
Architecture: amd64
Maintainer: your-name <your-email>
Description: A brief description of your package.
```
3. 创建一个 postinst 文件,这个文件会在 DEB 包安装后执行。在其中,您可以添加修改 /etc/ld.so.conf 的命令。以下是一个 postinst 文件示例:
```
#!/bin/bash
# Add a line to /etc/ld.so.conf
echo "/usr/local/lib" | tee -a /etc/ld.so.conf > /dev/null
# Refresh the ldconfig cache
ldconfig
```
4. 接下来,使用 dpkg-deb 命令打包您的程序:
```
dpkg-deb --build code-dir
```
这将创建一个名为 your-package-name_1.0_amd64.deb 的 DEB 包。
5. 最后,使用 dpkg -i 命令安装您的 DEB 包:
```
sudo dpkg -i your-package-name_1.0_amd64.deb
```
安装完成后,您应该可以在 /etc/ld.so.conf 中看到添加的新行。
希望这能帮助到您。如果您还有其他问题,请继续提问。
安装oracle instant client21.1版本报错了:dpkg: 处理归档 oracle-instantclient-basic_21.1.0.0.0-2_amd64.deb (--install)时出错: 正试图覆盖 /etc/ld.so.conf.d/oracle-instantclient.conf,它同时被包含于软件包 oracle-instantclient19.19-basic 19.19.0.0.0-2 dpkg-deb: 错误: 粘贴 子进程被信号(断开的管道) 终止了 正在处理用于 libc-bin (2.31-0ubuntu9.9) 的触发器 ... 在处理时有错误发生: oracle-instantclient-basic_21.1.0.0.0-2_amd64.deb Unable to install at /usr/share/perl5/Alien/Package/Deb.pm line 97, <GETPERMS> line 41. find oracle-instantclient-basic-21.1.0.0.0 -type d -exec chmod 755 {} ; rm -rf oracle-instantclient-basic-21.1.0.0.0
这个错误提示是因为你正在尝试安装oracle instant client21.1版本,但是系统中已经安装了oracle instant client19.19版本,而且这两个版本的文件有冲突。你可以尝试卸载oracle instant client19.19版本,或者将其文件备份并删除,然后再安装oracle instant client21.1版本。你可以使用以下命令备份并删除oracle instant client19.19版本:
```
sudo cp /etc/ld.so.conf.d/oracle-instantclient.conf /etc/ld.so.conf.d/oracle-instantclient.conf.bak
sudo apt remove oracle-instantclient19.19-basic
sudo rm /etc/ld.so.conf.d/oracle-instantclient.conf
```
然后再尝试安装oracle instant client21.1版本。希望这可以帮助你解决问题。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![sh](https://img-home.csdnimg.cn/images/20250102104920.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)