ubuntu中用checkinstall安装软件

本文介绍CheckInstall工具如何简化软件编译安装流程,并提供干净的安装与卸载体验。通过使用CheckInstall,可以避免手动编译安装带来的问题,如难以卸载和清理遗留文件等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       Checkinstall 是一个能从 tar.gz 类的源代码自动生成 RPM/Debian 或Slackware 安装包的程序。通过 CheckInstall,你就能用几乎所有的 tar.gz 类的源代码来生成“干净”的安装或者卸载包。

       我们在ubuntu下安装软件可以用apt-get来安装或者下载.deb包安装。这两种方法都是比较方便的。有时我们想安装新版本的软件时,可是apt-get安装的软件都比较老,还有的就是不更新了。而且网上好多不推出.deb包的。这样我们就必须去下载源代码来,自己编译安装。最常用的编译安装方法就是:

用 GNU Autoconf 安装程序
一般说来,我们编译安装一个由 GNU Autoconf 配置的程序是采用如下的步骤:
./configure && make && make install
这个 configure 脚本文件是用来“猜”出一系列系统相关的变量,这些变量是在后面的编译过程要用到的。它将检查系统变量值是否满足编译要求,然后使用这些变量在程序包内每个文件夹下生成 Makefile。此外,configure 脚本还会生成其它文件:
每个文件夹/子文件夹下的一个或多个 Makefile(s)
一个名叫 config.status 的脚本
一个文本文件 config.log
Configure 脚本文件成功运行之后, 你会输入 make 来编译程序,得到你需要的可执行文件。如果 make 成功的完成,你可以使用 make install 来安装这个程序。


       这样安装看起来也是比较简单的,最多也就是在./configure时可能会遇到一些包依赖不足的问题,什么包不足就装上什么一般都可以解决的,不过也有那种特变态的就是包冲突了,这种就要具体问题具体分析了。看起来这样安装也比较完善啊,简单而且还可以用上新版本的软件。

       可当你要来卸装这个软件时就不是那么容易了。如果当时的编译文件还保留了问题就比较容易解决了,直接cd到安装文件下,用命令make uninstall 就可以卸装原来的软件了。可是经常编译安装软件,那么多安装文件不一定都会保留的。如果找不到原来的安装文件要卸装这个软件就很难了,你要一个个文件找并删除,由于删除不干净就会留下很多零碎的垃圾文件,日积月累你的系统中就会被垃圾文件占满。还有一个问题就是如果删除不了原来的软件,要再编译安装这个软件的新版本就会出现各种冲突问题。

       不过,也不要觉的这个问题太难解决了,其实早已经有人想过这个问题,并比较完善的解决了。那就是用checkinstall来解决。

用 CheckInstall 安装程序
    上节我们采用 GNU Autoconf 来编译程序,现在该是换一种方式的时候了。你可以使用CheckInstall 工具。它采用自己的指令 checkinstall 来代替 make install。其他两个指令保留下来跟以前一样,因此,现在这个指令序列使用 CheckInstall 变成:
./configure && make && checkinstall
    指令 checkinstall 不仅默认运行了 make install,而且还监测所有安装过程中的写操作。为此,CheckInstall 使用了 Pancrazio de Mauro 所写的程序 Installwatch。在 make install 成功完成之后,CheckInstall 会产生一个 Slackware-,Debian- 或RPM- 安装包,然后按照软件包的默认配置来安装程序,并在当前目录(或标准安装包存储目录)留下一个生成的安装包。你可以通过修改变量 PAK_DIR 来修改这个保存目录。
CheckInstall 并不只是使用 make install,它还可以与其他安装指令相协调。例如,如果安装指令为 setup.sh,那么安装指令序列变成:
./configure && make && checkinstall setup.sh
我们还可以让 CheckInstall 带着很多参数运行。

      如果要获得更多的参数设置可以用命令man checkinstall来查看详细信息!!!!

参考:http://www.ibm.com/developerworks/cn/linux/l-cn-checkinstall/index.html

### 如何在 Ubuntu安装已下载的软件 #### 使用 `.deb` 文件安装软件 许多软件会提供 `.deb` 格式的包文件,可以直接通过 `dpkg` 或者图形界面工具来安装。以下是具体方法: 对于终端操作,可以使用以下命令完成安装: ```bash sudo dpkg -i /path/to/package_name.deb ``` 此命令用于安装指定路径下的 `.deb` 软件包[^1]。 如果依赖项缺失,则可以通过修复功能解决: ```bash sudo apt --fix-broken install ``` #### 安装来自源码编译的软件 某些情况下,用户可能需要从源代码构建并安装软件。这通常涉及以下几个方面的工作流程: 更新本地APT索引以确保获取最新可用版本的信息: ```bash sudo apt-get update ``` 接着安装必要的构建工具和库支持以便能够成功编译程序: ```bash sudo apt-get install build-essential checkinstall ``` 进入解压后的源目录执行配置脚本以及实际生成过程: ```bash ./configure make ``` 最后一步就是正式把新创建出来的二进制文档放置到系统合适位置上去供调用: ```bash sudo make install ``` 上述步骤适用于大多数开源项目的基础环境准备与部署需求[^4]。 #### 利用 Snap Store 进行应用管理 Snap 是一种现代化的应用打包方式,在Ubuntu中非常流行因为它能简化跨不同发行版之间的兼容性问题处理难度。只要简单的一条指令就可以轻松搞定目标应用程序的获取工作了: ```bash sudo snap install package-name ``` 这种方式不需要手动去寻找对应的`.deb`文件或者担心复杂的依赖关系调整等问题存在[^2]。 #### 配置 NVIDIA 的 cuDNN 库作为例子展示更复杂场景下第三方闭源组件接入办法 当涉及到特定硬件加速框架比如CUDA深度学习计算平台时候, 可能还需要额外增加一些专有驱动器的支持情况考虑进去。例如下面这个关于cuDNN设置教程片段就很好地说明了一个典型实例中的几个重要环节要点所在之处: 复制密钥环至标准共享区域方便后续验证机制正常运作起来: ```bash sudo cp /var/cudnn-something.gpg /usr/share/keyrings/ ``` 然后利用APT包管理系统来进行官方发布渠道资源链接定义修改动作达成目的效果实现自动化维护升级可能性更大程度减少人为错误发生几率提升整体效率水平层次高度达到预期设想范围之内[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值