I am trying to install python3-matplotlib by this command:
sudo apt install python3-matplotlib
but terminal return me this error:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
python3-matplotlib : Depends: python3 (< 3.8) but 3.8.2-3 is to be installed
Depends: python3-kiwisolver but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
I tried to solve it by:
apt-get update
apt-get upgrade
sudo aptitude install python3-matplotlib
but return:
The following NEW packages will be installed:
fonts-lyx{a} libjs-jquery-ui{a} python-matplotlib-data{a} python3-cycler{a} python3-dateutil{a} python3-matplotlib{b} python3-pyparsing{a}
0 packages upgraded, 7 newly installed, 0 to remove and 26 not upgraded.
Need to get 10.1 MB of archives. After unpacking 28.0 MB will be used.
The following packages have unmet dependencies:
python3-matplotlib : Depends: python3 (< 3.8) but 3.8.2-3 is installed
Depends: python3-kiwisolver but it is not installable
The following actions will resolve these dependencies:
Keep the following packages at their current version:
1) python3-matplotlib [Not Installed]
How can solve it?
PS: this is information of my OS:
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux bullseye/sid
Release: 8.11
Codename: jessie
I have build LFS 8.0 and prepared a base linux system. I am installing package manager on that system. I have installed dpkg from a source package in it. After installing dpkg when i try to install any .deb package it throws an error along with the list of several dependencies. Among them also their are some dependencies related to gcc and glibc. Althought they are already installed in my LFS system. Have searched alot regarding this but could not find any helping material that why the package could not find its pre-req package even its already installed.
For example when i try to install zlib1g_1.2.8.dfsg-5_amd64.deb in lfs system, below mentioned error appears:
{
root [ /sources ]# dpkg -i zlib1g_1.2.8.dfsg-5_amd64.deb
Selecting previously unselected package zlib1g:amd64.
(Reading database ... 348 files and directories currently installed.)
Preparing to unpack zlib1g_1.2.8.dfsg-5_amd64.deb ...
Unpacking zlib1g:amd64 (1:1.2.8.dfsg-5) ...
dpkg: dependency problems prevent configuration of zlib1g:amd64:
zlib1g:amd64 depends on libc6 (>= 2.14); however:
Package libc6 is not installed.
dpkg: error processing package zlib1g:amd64 (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
zlib1g:amd64
}
Note: I have installed only dpkg. apt-get is not installed.
Any helping material regarding this is much appreciated.
Thanks
Though those libraries may be present on your system, they are not installed as deb packages and for dpkg they are missing. If you want to use dpkg, you will have to install all of those libraries as debs.
I am new to the computing world. My intention is to figure out a generic approach to solve cyclic dependencies while installing new software on Linux, if it exists. Here I am using the case of Google chrome to better illustrate my question. While installing Google chrome (both using package manager and apt-get) I encounter the following problem:
Selecting previously unselected package google-chrome-stable.
(Reading database ... 262709 files and directories currently installed.)
Preparing to unpack google-chrome-stable_current_amd64.deb ...
Unpacking google-chrome-stable (55.0.2883.87-1) ...
dpkg: dependency problems prevent configuration of google-chrome-stable:
google-chrome-stable depends on libappindicator1; however:
Package libappindicator1 is not installed.
To solve the above error, I tried installing libappindicator1 but that returns another dependency error:
The following packages have unmet dependencies:
libappindicator1 : Depends: libindicator7 (>= 0.4.90) but it is not going to be installed
Now here we encounter the cyclic dependency. When trying to install libindicator7 the following error is received:
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
google-chrome-stable : Depends: libappindicator1 but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
As you can see that I cannot install the package because of the dependencies. Now one way is to use apt-get -f install and let Linux magically do it's work. But that won't teach me much. Using this example (or suggest a better example), can we figure out a better approach to solve the problem of cyclic dependency? If this is a stand-alone case of cyclic dependency while installing a new software or I made a mistake in interpreting the errors then I can remove the question.
Some helpful links-
[1]: https://askubuntu.com/questions/764040/im-having-a-hard-time-installing-google-chrome-on-16-04-lts-please-help [2]: How to solve Cyclic Dependency [3]: How to Solve Circular Dependency [4]: cyclic dependency ... how to solve?
The problem is usage of dpkg to install google-chrome-stable. DPKG does now install the required dependencies and leave the system in a broken state.
sudo apt install ./google-chrome-stable.deb
This installs the package with required dependencies.
dpkg only installs a package, so doing dpkg -i packageName.deb will only install this Deb package, and will notify you of any dependencies that need to be installed, but it will not install them, and it will not configure the packageName.deb because well...the dependencies are not there.
apt is a Package Management System that handles the installation of Deb packages on Debian-based Linux distributions. A Package Management System is a set of tools that will help you install, remove, and change packages easily. So apt is like a clever dpkg
DPKG is the software at the base of the package management system in the free operating system Debian and its numerous derivatives. dpkg is used to install, remove, and provide information about .deb packages. dpkg (Debian Package) itself is a low-level tool. [1]
APT (for Advanced Package Tool) is a set of tools for managing Debian packages, and therefore the applications installed on your Debian system. APT makes it possible to Install applications, Remove applications, Keep your applications up to date and much more.[2]
So if you move step by step on your installation
Once you download a .deb package you can unzip it. Unzip the contained control.tar.gz file. You would find a set of all the required packages.
Find all the dependencies for that specific Debian package. For google-chrome you would have something like
Package: google-chrome-stable
Version: 55.0.2883.87-1
Architecture: amd64
Maintainer: Chrome Linux Team <chromium-dev#chromium.org>
Installed-Size: 175549
Pre-Depends: dpkg (>= 1.14.0)
Depends: gconf-service, libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.11), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0), libdbus-1-3 (>= 1.1.4), libexpat1 (>= 2.0.1), libfontconfig1 (>= 2.9.0), libfreetype6 (>= 2.3.9), libgcc1 (>= 1:4.1.1), libgconf-2-4 (>= 2.31.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.26.0), libgtk2.0-0 (>= 2.24.0), libnspr4 (>= 2:4.9-2~) | libnspr4-0d (>= 1.8.0.10) | libnspr4 (>= 4.9.5-0ubuntu0), libnss3 (>= 2:3.13.4-2~) | libnss3-1d (>= 3.12.4), libpango1.0-0 (>= 1.14.0), libstdc++6 (>= 4.8.0), libx11-6 (>= 2:1.4.99.1), libx11-xcb1, libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, ca-certificates, fonts-liberation, libappindicator1, libnss3 (>= 3.17.2), lsb-base (>= 4.1), xdg-utils (>= 1.0.2), wget
Provides: www-browser
Section: web
Priority: optional
Description: The web browser from Google
Google Chrome is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier.
You would need to install all the dependencies for that specific package. Each dependency might depend on a set of other dependencies. You would have a tree of these dependencies. Either you can manually install all these dependencies or use something like apt or yum or aptitude ...
What either of these package managers would do for you is they would construct a dependency tree for you and install all the relevant packages before installing your Debian package.
So, Ideally there should not be any loops in the dependency tree, but it might be the case that some of the existing packages are already installed and are in newer/older version of what is currently installed and is a required package for an already existing installed package. Then you can end up in cyclic dependency loop.
So, how apt handles cyclic dependencies is mentioned in [3], I think you can consider it as a generic algorithm for solving a dependency manually but it's not recommended. Circular dependencies happen in the repositories, but the ones left standing to obey some specific rules. Usually, these are tightly bound packages. So the Depends relationship between them specifies the exact version number.
https://en.wikipedia.org/wiki/Dpkg
https://wiki.debian.org/Apt
https://web.archive.org/web/20150905091555/http://algebraicthunk.net/~dburrows/blog/entry/from-blogspot/2005-05-09--21:30:00/
What helped me with installing libappindicator1 on Debian and in Docker as well - is installing this package manually. Also, it depends on another one libindicator7.
RUN curl -p --insecure "http://ftp.de.debian.org/debian/pool/main/liba/libappindicator/libappindicator1_0.4.92-7_amd64.deb" --output libappindicator1_0.4.92-8_amd64.deb \
&& curl -p --insecure "http://ftp.de.debian.org/debian/pool/main/libi/libindicator/libindicator7_0.5.0-4_amd64.deb" --output libindicator7_0.5.0-4_amd64.deb \
&& dpkg -i libindicator7_0.5.0-4_amd64.deb \
&& dpkg -i libappindicator1_0.4.92-8_amd64.deb \
&& rm libindicator7_0.5.0-4_amd64.deb \
&& rm libappindicator1_0.4.92-8_amd64.deb
I installed the latest version (V5.10) of MonoDevelop on Ubuntu V14.04.3. After installation I tried to install monodevelop-database, but the installation fails
sudo apt-get install monodevelop-database
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
monodevelop-database : Depends: libmono-npgsql4.0-cil (>= 1.0) but it is not going to be installed
Depends: libmono-system-data2.0-cil (>= 3.12.0) but it is not going to be installed
Depends: monodevelop (< 5.7.0.660.) but 5.10.0.871-0xamarin2 is to be installed
E: Unable to correct problems, you have held broken packages.
I tried already install -f and update/upgrade commands, but that does not solve the issue. Does anyone know a solution?
Thanks in advance,
Jordy
I am trying to compile vpnshrew with CMAKE on linux mint.
However QT4 is missing and I have already tried everything with no success. The starting line it's this dependency error:
$ sudo apt-get install libqt4-core
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libqt4-core : Depends: libqt4-dbus (= 4:4.8.3+dfsg-0ubuntu3) but it is not going to be installed
Depends: libqt4-network (= 4:4.8.3+dfsg-0ubuntu3) but it is not going to be installed
Depends: libqt4-script (= 4:4.8.3+dfsg-0ubuntu3) but it is not going to be installed
Depends: libqt4-test (= 4:4.8.3+dfsg-0ubuntu3) but 4:4.8.3+dfsg-0ubuntu3.1 is to be installed
Depends: libqt4-xml (= 4:4.8.3+dfsg-0ubuntu3) but 4:4.8.3+dfsg-0ubuntu3.1 is to be installed
Depends: libqtcore4 (= 4:4.8.3+dfsg-0ubuntu3) but 4:4.8.3+dfsg-0ubuntu3.1 is to be installed
E: Unable to correct problems, you have held broken packages.
I have already tried lots of solutions. Namely
sudo dpkg --configure -a
sudo apt-get -f install
sudo apt-get update
Thanks in advance for any help.
Try sudo apt-get install qt4-dev-tools libqt4-dev libqt4-core libqt4-gui.