For some reason, I have to install some packages of Ubuntu 16.04 to Ubuntu 17.10. I've tried to apt update && apt install pkgname
but there are always some dependency issues.
What I'm trying is that I get the source of some package with the command apt source pkgname
.
I've found that I got three things:
pkgname.dsc
pkgname.orig.tar.gz
pkgname.debian.tar.xz
The .dsc
file seems to contain some information of pkgname
, the .orig.tar.gz
file is the source code, but I don't know what the .debian.tar.xz
file is.
For example, to install libpcl-dev
, I did things as below:
apt source libpcl-dev && tar xzvf pcl.orig.tar.gz && cd pcl && mkdir build && cd build && cmake .. && make install && make
.
It seems to work but I can't get what I need, which means that there isn't a file named libpcl-dev
in /usr
.
Installing the binary (
.deb
) package oflibpcl-dev
from the 16.04 repositories on a 17.10 system is difficult, if not impossible, due to its many dependencies, some of which have to be installed from 16.04 and may conflict with packages already installed from 17.10.However, building the source package from 16.04 on a 17.10 system is possible, because all the build dependencies are available in 17.10.
First make a directory to work in
Get the source package
Probably when you run
debuild
you will get a "command not found" telling you to installdevscripts
; install it and rundebuild
again. Now it will complain that some build dependencies are missing; install them and rundebuild
again, and now the build should be successful (errors aboutdebsign
can be ignored). You will have some.deb
s in your~/libpcl
directory, which you can install as usual.Warning: if some bugs, including security issues, are found in this version of PCL and a fixed version is released in 16.04, you will not automatically get it; instead you must repeat the above process with the new source package.