如何安装 16.04 至 17.10 的软件包

如何安装 16.04 至 17.10 的软件包

由于某种原因,我必须将 Ubuntu 16.04 的一些软件包安装到 Ubuntu 17.10。我试过了,apt update && apt install pkgname但总是存在一些依赖性问题。

我正在尝试使用命令获取某些包的源代码apt source pkgname

我发现我得到了三件事:

pkgname.dsc
pkgname.orig.tar.gz
pkgname.debian.tar.xz

.dsc文件好像包含了一些信息pkgname,该.orig.tar.gz文件是源代码,但我不知道该.debian.tar.xz文件是什么。

例如,为了安装libpcl-dev,我做了如下操作:

apt source libpcl-dev && tar xzvf pcl.orig.tar.gz && cd pcl && mkdir build && cd build && cmake .. && make install && make

它似乎有效,但我无法获得我需要的东西,这意味着没有一个名为的libpcl-dev文件/usr

答案1

在 17.10 系统上安装来自 16.04 存储库的二进制(.deb)包libpcl-dev非常困难,甚至是不可能的,因为它有许多依赖项,其中一些必须从 16.04 安装,并且可能与已从 17.10 安装的包冲突。

但是,在 17.10 系统上从 16.04 构建源包是可能的,因为所有构建依赖项在 17.10 中均可用。

首先创建一个工作目录

mkdir ~/libpcl
cd ~/libpcl

获取源码包

wget http://archive.ubuntu.com/ubuntu/pool/universe/p/pcl/pcl_1.7.2.orig.tar.gz
tar xf pcl_1.7.2.orig.tar.gz
cd pcl-pcl-1.7.2
wget http://archive.ubuntu.com/ubuntu/pool/universe/p/pcl/pcl_1.7.2-14build1.debian.tar.xz -O - | tar xJ
debuild

运行时,debuild您可能会收到“命令未找到”提示,提示您安装devscripts;安装并debuild再次运行。现在它会抱怨缺少一些构建依赖项;安装它们并debuild再次运行,现在构建应该成功(debsign可以忽略有关的错误)。您的目录中将有一些.debs ~/libpcl,您可以像往常一样安装它们。

警告:如果在此版本的 PCL 中发现一些错误(包括安全问题),并且在 16.04 中发布了修复版本,您将不会自动获取它;而是必须使用新的源包重复上述过程。

相关内容