[Solved] x86 Ubuntu install trouble / dependencies
-
Pi Model or other hardware: x86
RetroPie Version Used: 4.7.15
Built From: Manual install over Ubuntu 20.04.2Here is what I did (the second attempt this is...)
-Install Ubuntu 20.04.2
-choose minimal install, tick box for third party drivers
-sudo apt update && upgrade
-sudo apt install -y git dialog unzip xmlstarlet
-git clone --depth=1 https://github.com/RetroPie/RetroPie-Setup.git
-sudo RetroPie-Setup/retropie_setup.sh
Then I receive the error:
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: build-essential : Depends: libc6-dev but it is not going to be installed or libc-dev g++ : Depends: g++-9 (>= 9.3.0-3~) but it is not going to be installed E: Unable to correct problems, you have held broken packages. Unable to install packages required by /home/jack/RetroPie-Setup/retropie_packages.sh - Could not install package(s): subversion curl gcc g++ build-essential python3-pyudev.
So I type:
sudo apt install libc6-dev
and receive:
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: libc6-dev : Depends: libc6 (= 2.31-0ubuntu9) but 2.31-0ubuntu9.2 is to be installed E: Unable to correct problems, you have held broken packages.
So I am determined to get the right package version, type:
sudo apt install libc6=2.31-0ubuntu9
This downgrades the package and I can now run the Setup script. So run the script and choose to manage packages and install all core packages.
This fails to install emulationstation or retroarch. Here is snippet of log:
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: libasound2-dev : Depends: libasound2 (= 1.2.2-2.1) libpulse-dev : Depends: libpulse0 (= 1:13.99.1-1ubuntu3.8) but 1:13.99.1-1ubuntu3.10 is to be installed Depends: libpulse-mainloop-glib0 (= 1:13.99.1-1ubuntu3.8) but 1:13.99.1-1ubuntu3.10 is to be installed Depends: libglib2.0-dev but it is not going to be installed libsdl2-dev : Depends: libegl1-mesa-dev but it is not going to be installed Depends: libgl1-mesa-dev but it is not going to be installed Depends: libgles2-mesa-dev but it is not going to be installed Depends: libglu1-mesa-dev but it is not going to be installed Depends: libibus-1.0-dev but it is not going to be installed libudev-dev : Depends: libudev1 (= 245.4-4ubuntu3) but 245.4-4ubuntu3.4 is to be installed E: Unable to correct problems, you have held broken packages.
Last time this happened (1st attempt on a normal install type) I downgraded
libasound2-data
to the expected version and in the process it removed my desktop environment. I didn't figure that out until after installing the rest of RetroPie and rebooting.Here is what apt says about libasound2-data downgrade:
sudo apt install libasound2-data=1.2.2-2.1 Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: apg apturl-common cheese-common espeak-ng-data evolution-data-server-common fprintd geoclue-2.0 gir1.2-accountsservice-1.0 gir1.2-atspi-2.0 gir1.2-dbusmenu-glib-0.4 gir1.2-dee-1.0 gir1.2-gck-1 gir1.2-gcr-3 gir1.2-gdm-1.0 gir1.2-geoclue-2.0 gir1.2-goa-1.0 gir1.2-graphene-1.0 gir1.2-gstreamer-1.0 gir1.2-gweather-3.0 gir1.2-javascriptcoregtk-4.0 gir1.2-json-1.0 gir1.2-nm-1.0 gir1.2-nma-1.0 gir1.2-rsvg-2.0 gir1.2-snapd-1 gir1.2-soup-2.4 gir1.2-unity-5.0 gir1.2-upowerglib-1.0 gir1.2-webkit2-4.0 gkbd-capplet gnome-control-center-faces gnome-online-accounts gnome-session-bin gnome-session-common gnome-shell-common gnome-startup-applications gstreamer1.0-clutter-3.0 iio-sensor-proxy libao-common libao4 libappindicator3-1 libboost-thread1.71.0 libbrlapi0.7 libcamel-1.2-62 libcheese8 libclutter-1.0-0 libclutter-1.0-common libclutter-gst-3.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libcolord-gtk1 libdotconf0 libebackend-1.2-10 libebook-1.2-20 libebook-contacts-1.2-3 libecal-2.0-1 libedata-book-1.2-26 libedata-cal-2.0-1 libedataserver-1.2-24 libedataserverui-1.2-2 libfftw3-single3 libfprint-2-2 libgdm1 libgeoclue-2-0 libgeocode-glib0 libgles2 libgnomekbd-common libgnomekbd8 libgoa-backend-1.0-1 libgssdp-1.2-0 libgupnp-1.2-0 libgupnp-av-1.0-2 libgupnp-dlna-2.0-3 libgweather-3-16 libgweather-common libmediaart-2.0-0 libpam-fprintd libpcre2-32-0 libphonenumber7 libprotobuf17 libpulse-mainloop-glib0 libpulsedsp librygel-core-2.6-2 librygel-db-2.6-2 librygel-renderer-2.6-2 librygel-server-2.6-2 libsbc1 libsnapd-glib1 libsodium23 libsonic0 libsoxr0 libspeechd2 libspeexdsp1 libsysmetrics1 libwebrtc-audio-processing1 libxcb-res0 libxkbcommon-x11-0 libxklavier16 mobile-broadband-provider-info mutter-common network-manager-gnome policykit-1-gnome pulseaudio-utils python3-brlapi python3-click python3-colorama python3-dateutil python3-debconf python3-debian python3-louis python3-macaroonbakery python3-nacl python3-protobuf python3-pyatspi python3-pymacaroons python3-rfc3339 python3-software-properties python3-speechd python3-tz python3-xdg python3-xkit rtkit rygel software-properties-common sound-icons sound-theme-freedesktop switcheroo-control unattended-upgrades update-notifier-common xbrlapi xwayland Use 'sudo apt autoremove' to remove them. The following additional packages will be installed: policykit-1-gnome Suggested packages: alsa-utils The following packages will be REMOVED: alsa-utils apturl brltty evolution-data-server gdm3 gir1.2-gnomebluetooth-1.0 gir1.2-mutter-6 gnome-bluetooth gnome-control-center gnome-disk-utility gnome-initial-setup gnome-screenshot gnome-session-canberra gnome-settings-daemon gnome-shell gnome-shell-extension-appindicator gnome-shell-extension-desktop-icons gnome-shell-extension-ubuntu-dock gstreamer1.0-alsa libasound2 libasound2-plugins libatopology2 libcanberra-gtk3-0 libcanberra-gtk3-module libcanberra-pulse libcanberra0 libcheese-gtk25 libespeak-ng1 libgnome-bluetooth13 libgsound0 libmutter-6-0 libpcaudio0 mutter nautilus-share orca pulseaudio pulseaudio-module-bluetooth software-properties-gtk speech-dispatcher speech-dispatcher-audio-plugins speech-dispatcher-espeak-ng spice-vdagent ubuntu-desktop ubuntu-desktop-minimal ubuntu-drivers-common ubuntu-release-upgrader-gtk ubuntu-session update-manager update-notifier The following NEW packages will be installed: policykit-1-gnome The following packages will be DOWNGRADED: libasound2-data 0 upgraded, 1 newly installed, 1 downgraded, 49 to remove and 0 not upgraded. Need to get 44.0 kB of archives. After this operation, 54.0 MB disk space will be freed. Do you want to continue? [Y/n]
EDIT: So my question is what happened, and do I need to wait for an update to package dependencies information or is this result and the manual re-install of the desktop environment the way to go?
I've done manual install before on this type of PC and didn't have trouble like this back then.
:-/ -
@yfzdude said in x86 Ubuntu install trouble / dependencies:
E: Unable to correct problems, you have held broken packages
This looks like the relevant error. Do you have any held packages ? Any 3rd party repos ?
-
@mitu
I'm not sure how to tell if I do. Is there a way to list them out? I didn't edit the sources file for apt. It should be the stock file.This is from a clean OS install with no extra steps between first boot up and running the RetroPie manual install process as written on the Docs page. The only thing you might call unusual is that I declined to connect to a network during the OS install and I manually connected and updated after logging in the first time.
If you think it might be caused by the Ubuntu repositories, I could try a clean install and skipping the
sudo apt upgrade
prior to the setup script install. -
You could change your current Ubuntu repository mirror and retry (
apt update
first). You can useapt-cache policy
to check the troublesome packages and see what version are available and from which repository. -
@mitu said in x86 Ubuntu install trouble / dependencies:
You could change your current Ubuntu repository mirror and retry (
apt update
first). You can useapt-cache policy
to check the troublesome packages and see what version are available and from which repository.I was unable to find held packages, but you got me going in the right direction. For whatever reason, my
sources.list
file had a comment in it that suggested that because I used a smaller ISO it might not have been the full file. Perhaps a side effect of not allowing online updates during install.So I got hold of a more 'full' listing of the official sources and ran
apt update
and it suddenly had way more packages to update and then the install script could find more of what it needed.Thanks!
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.