Imagine situation when you install for example openssl package like this (manually):

wget http://openssl.org/source/openssl-1.0.1h.tar.gz
tar -xvf openssl-1.0.1h.tar.gz
cd openssl-1.0.1h

./config shared
make depend
make test
make install

Now you want to install another package from aptitude like this:

apt-get install ca-certificates

But it says it will install openssl (lower version but with aptitude) of the package you already manually installed, how can this be installed with using the package I already manually installed?

Please do not take care of why I need to use install manually this package and not using official one, just please help me answer the question, thank you. You can imagine any other package if this one is a problem for you.


There isn't really a clean way do do this but as you've installed openssl from source you're on your own anyway.

  • Use apt-get download <package> to get the .deb file you want to install.
  • Insatll the .deb file using dpkg --ignore-dep=openssl -i <dotdebfile.deb>
  • Edit /var/lib/dpkg/status and remove the dependency from the <package>.
|improve this answer|||||

Ok, openssl/libssl is a bit complicated, so let us start with assuming some other package dependency.

First of all you making things unnecessarily complicated for you by installing something by way of ./configure; make; make install on an operating system which has a package manager. If you need something not provided by existing package repository a much better route is usually to create your own (deb) package and install that.

That said, if you really insists on installing stuff manually the easiest way to keep the dpkg/apt package database happy is probably to use something like equivs to create empty bogus packages, providing the dependency without actually installing any files.

What makes openssl/libssl more complicated is that you often have dependencies on specific version. Depending the situation you might still need to install the stock Debian version, and then install the newer version in a separate location, outside the (library) path.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.