hplip not working on fresh Ubuntu 20.04 installation

I have just done a clean installation of Ubuntu 20.04.1 on a Lenovo Yoga 730. I have a wireless HP Photosmart C4780 which I have setup successfully setup on another Ubuntu 20.04 and Ubuntu 18.04 machine by simply using

hp-setup 192.168.0.22

When I first logged in to the new installation I used

apt list --installed

which showed me that hplip and hplip-data were installed. I ran

apt install hplip-gui

and then tried

hp-setup 192.168.0.22

which fails with error

error: Printer queue setup failed. Error : successful-ok-ignored-or-substituted-attributes

To check what is wrong I ran

hp-doctor

which gives

HP Linux Imaging and Printing System (ver. 3.20.3)
Self Diagnse Utility and Healing Utility ver. 1.0
Copyright (c) 2001-18 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.
HP Linux Imaging and Printing System (ver. 3.20.3)
Self Diagnse Utility and Healing Utility ver. 1.0
Copyright (c) 2001-18 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.
Checking for Deprecated items....
No Deprecated items are found
Checking for HPLIP updates....
error: Failed to locate hp-upgrade utility
Checking for Dependencies....
warning: ubuntu-20.04 version is not supported. Using ubuntu-19.10 versions dependencies to verify and install...
---------------
| SYSTEM INFO |
--------------- Kernel: 5.4.0-48-generic #52-Ubuntu SMP Thu Sep 10 10:58:49 UTC 2020 GNU/Linux Host: nell Proc: 5.4.0-48-generic #52-Ubuntu SMP Thu Sep 10 10:58:49 UTC 2020 GNU/Linux Distribution: ubuntu 20.04 Bitness: 64 bit
-----------------------
| HPLIP CONFIGURATION |
-----------------------
HPLIP-Version: HPLIP 3.20.3
HPLIP-Home: /usr/share/hplip
warning: HPLIP-Installation: Auto installation is not supported for ubuntu distro 20.04 version
Current contents of '/etc/hp/hplip.conf' file:
# hplip.conf. Generated from hplip.conf.in by configure.
[hplip]
version=3.20.3
[dirs]
home=/usr/share/hplip
run=/var/run
ppd=/usr/share/ppd/hplip/HP
ppdbase=/usr/share/ppd/hplip
doc=/usr/share/doc/hplip
html=/usr/share/doc/hplip-doc
icon=no
cupsbackend=/usr/lib/cups/backend
cupsfilter=/usr/lib/cups/filter
drv=/usr/share/cups/drv
bin=/usr/bin
apparmor=/etc/apparmor.d
# Following values are determined at configure time and cannot be changed.
[configure]
network-build=yes
libusb01-build=no
pp-build=no
gui-build=yes
scanner-build=yes
fax-build=yes
dbus-build=yes
cups11-build=no
doc-build=yes
shadow-build=no
hpijs-install=yes
foomatic-drv-install=yes
foomatic-ppd-install=no
foomatic-rip-hplip-install=no
hpcups-install=yes
cups-drv-install=yes
cups-ppd-install=no
internal-tag=3.20.3
restricted-build=no
ui-toolkit=qt5
qt3=no
qt4=no
qt5=yes
policy-kit=yes
lite-build=no
udev_sysfs_rules=no
hpcups-only-build=no
hpijs-only-build=no
apparmor_build=no
class-driver=no
Current contents of '/var/lib/hp/hplip.state' file:
[plugin]
installed = 1
eula = 1
version = 3.20.3
Current contents of '~/.hplip/hplip.conf' file:
[last_used]
device_uri = hp:/net/Photosmart_C4700_series?ip=192.168.0.22
[installation]
date_time = 09/22/20 18:30:55
version = 3.20.3 <Package-name> <Package-Desc> <Required/Optional> <Min-Version> <Installed-Version> <Status> <Comment>
-------------------------
| External Dependencies |
------------------------- error: cups CUPS - Common Unix Printing System REQUIRED 1.1 - INCOMPAT 'CUPS may not be installed or not running' gs GhostScript - PostScript and PDF language interpreter and previewer REQUIRED 7.05 9.50 OK - error: xsane xsane - Graphical scanner frontend for SANE OPTIONAL 0.9 - MISSING 'xsane needs to be installed' scanimage scanimage - Shell scanning program OPTIONAL 1.0 1.0.29 OK - error: dbus DBus - Message bus system REQUIRED - 1.12.16 MISSING 'DBUS may not be installed or not running' policykit PolicyKit - Administrative policy framework OPTIONAL - 0.105 OK - network network -wget OPTIONAL - 1.20.3 OK - avahi-utils avahi-utils OPTIONAL - 0.7 OK -
------------------------
| General Dependencies |
------------------------ error: libjpeg libjpeg - JPEG library REQUIRED - - MISSING 'libjpeg needs to be installed' error: cups-devel CUPS devel- Common Unix Printing System development files REQUIRED - - MISSING 'cups-devel needs to be installed' error: cups-image CUPS image - CUPS image development files REQUIRED - - MISSING 'cups-image needs to be installed' error: libpthread libpthread - POSIX threads library REQUIRED - b'2.31' MISSING 'libpthread needs to be installed' error: libusb libusb - USB library REQUIRED - 1.0 MISSING 'libusb needs to be installed' sane SANE - Scanning library REQUIRED - - OK - error: sane-devel SANE - Scanning library development files REQUIRED - - MISSING 'sane-devel needs to be installed' error: libnetsnmp-devel libnetsnmp-devel - SNMP networking library development files REQUIRED 5.0.9 - MISSING 'libnetsnmp-devel needs to be installed' error: libcrypto libcrypto - OpenSSL cryptographic library REQUIRED - 1.1.1 MISSING 'libcrypto needs to be installed' python3X Python 2.2 or greater - Python programming language REQUIRED 2.2 3.8.2 OK - python3-notify2 Python libnotify - Python bindings for the libnotify Desktop notifications OPTIONAL - - OK - error: python3-pyqt4-dbus PyQt 4 DBus - DBus Support for PyQt4 OPTIONAL 4.0 - MISSING 'python3-pyqt4-dbus needs to be installed' error: python3-pyqt4 PyQt 4- Qt interface for Python (for Qt version 4.x) REQUIRED 4.0 - MISSING 'python3-pyqt4 needs to be installed' python3-dbus Python DBus - Python bindings for DBus REQUIRED 0.80.0 1.2.16 OK - python3-xml Python XML libraries REQUIRED - 2.2.9 OK - error: python3-devel Python devel - Python development files REQUIRED 2.2 3.8.2 MISSING 'python3-devel needs to be installed' python3-pil PIL - Python Imaging Library (required for commandline scanning with hp-scan) OPTIONAL - 7.0.0 OK - python3-reportlab Reportlab - PDF library for Python OPTIONAL 2.0 3.5.34 OK -
--------------
| COMPILEDEP |
-------------- error: libtool libtool - Library building support services REQUIRED - - MISSING 'libtool needs to be installed' error: gcc gcc - GNU Project C and C++ Compiler REQUIRED - - MISSING 'gcc needs to be installed' error: make make - GNU make utility to maintain groups of programs REQUIRED 3.0 - MISSING 'make needs to be installed'
---------------------
| Python Extentions |
--------------------- cupsext CUPS-Extension REQUIRED - 3.20.3 OK - hpmudext IO-Extension REQUIRED - 3.20.3 OK -
----------------------
| Scan Configuration |
----------------------
'/etc/sane.d/dll.d/hpaio' not found. hpaio HPLIP-SANE-Backend REQUIRED - 3.20.3 OK 'hpaio found in /etc/sane.d/dll.conf' scanext Scan-SANE-Extension REQUIRED - 3.20.3 OK -
------------------------------
| DISCOVERED SCANNER DEVICES |
------------------------------
No Scanner found.
--------------------------
| DISCOVERED USB DEVICES |
--------------------------
No devices found.
---------------------------------
| INSTALLED CUPS PRINTER QUEUES |
---------------------------------
lpstat
------
Type: Unknown
Device URI: No destinations added.
--------------
| PERMISSION |
--------------
Missing Required Dependencies
-----------------------------
error: 'libcups2' package is missing or 'cups' service is not running.
error: 'libdbus-1-dev' package is missing/incompatible
error: 'libjpeg-dev' package is missing/incompatible
error: 'libcups2-dev' package is missing or 'cups' service is not running.
error: 'cups-bsd' package is missing or 'cups' service is not running.
error: 'cups-client' package is missing or 'cups' service is not running.
error: 'libcupsimage2-dev' package is missing or 'cups' service is not running.
error: 'build-essential' package is missing/incompatible
error: 'libusb-1.0.0-dev' package is missing/incompatible
error: 'libusb-0.1-4' package is missing/incompatible
error: 'libsane-dev' package is missing/incompatible
error: 'libsnmp-dev' package is missing/incompatible
error: 'snmp-mibs-downloader' package is missing/incompatible
error: 'openssl' package is missing/incompatible
error: 'python3-pyqt4' package is missing/incompatible
error: 'gtk2-engines-pixbuf' package is missing/incompatible
error: 'python3-dev' package is missing/incompatible
error: 'libtool' package is missing/incompatible
error: 'libtool-bin' package is missing/incompatible
error: 'build-essential' package is missing/incompatible
error: 'build-essential' package is missing/incompatible
Missing Optional Dependencies
-----------------------------
error: 'gtk2-engines-pixbuf' package is missing/incompatible
error: 'xsane' package is missing/incompatible
error: 'python3-dbus.mainloop.qt' package is missing/incompatible
ENTER SUDO PASSWORD
-------------------
Please enter the sudoer password:
Checking Permissions....
Checking for Configured Queues....
No Queue added
warning: No Queue(s) configured.
Checking for HP Properitery Plugin's....
No plug-in printers are configured.
Diagnose completed...
More information on Troubleshooting,How-To's and Support is available on 

The first thing that seems odd is that it is reported that hplip-gui on Ubuntu 20.04 is compiled against qt5. Also many of these packages reported missing/incompatible are already installed (via apt).

Before my fresh install, I tried apt purge to get rid of everything hplip and reinstalled them, never with any success. I tried this several times and eventually somehow broke my system which lead to the fresh installation.

I am not sure what to do from here to get hplip working.

4 Answers

You have to install python3 and all the toolkits.

sudo apt install python3-pip
sudo apt-get install --assume-yes python3-pyqt5
sudo apt-get install --assume-yes python3-dbus.mainloop.pyqt5
sudo apt-get install --assume-yes python3-notify

Then when you run hplip respond "no" to the failed install of the old python.

sh hplip-3.20.9.run

and finally:

sudo apt-get install libcanberra-gtk-module

which seems to be necessary, although I don't know why. Delete your printer then reinstall, and it should work.

Try this:

Download the file to ~/Dowloads

Open a terminal and remove the previously installed version:

sudo apt remove hplip*

Cd to the location where the installer was downloaded.

cd ~/Downloads

To install run this command:

sh hplip-3.20.6.run

Select the install mode Automatic, enter an a

Ensure the installer detected the correct Linux distribution.

Enter Your root/Superuser User Password.

The installer will now detect what dependencies your system will need to install before installing HPLIP

If your system is missing any dependencies they are now downloaded and installed.

./configure prepares HPLIP for install as well as your system is verified to have all the required dependencies for HPLIP.

'make' is then executed. Make compiles ("builds") HPLIP for your system.

'make install' is the actual install procedure, this step is where HPLIP is actually being installed to your system.

Use 'hp-setup' to configure your printer.

The first step is to select the printer connection type.

Next the setup tool will display printers detected.

Select the PPD file to be Used for Your printer, usually you will want to select the recommended PPD file.

Click "AddPrinter" to complete the printer setup process.

3

From hplip's launchpad site I have found a solution which worked for me. It is post #7 in this thread. The problem I describe in the question is caused by Ubuntu 20.04 using python3 with reduced support for python2. If /usr/bin/python links to a python 2 version then running hplip-3.20.**.run will have the reported problems trying and failing to install the necessary python components.

To diagnose this problem, run

python --version

if you get a version with leading digit 2 then the fix is as follows

sudo unlink /usr/bin/python
sudo ln -s /usr/bin/python3.* /usr/bin/python

where python3.* is whichever version of python3 you have installed. You can find this out by running

ls /usr/bin/python*

Once I did this then running

sh hplip-3.20.**.run

worked fine

If you don't want to update the symlink manually (as brett stevens suggested), you can use python-is-python3:

sudo apt install python-is-python3

then reinstall hplip.

0

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

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

You Might Also Like