Hi Michael,
On 13.07.21 09:06, Michael Leukert - AMPEGON wrote:
Thank you for your assistance and the useful hints at your link (https://flashrom.org/Downloads). After some struggles with the prerequisites, we were finally able to install it from source (with FTDI support), and our program is now working.
grats! :)
I don't have a lot of experience with package managers, but it seems to me that we had to recursively uninstall and reinstall an unreasonably large number of packages by hand in order to satisfy the exact version requirements for each prerequisite of flashrom. In fact we destroyed our ubuntu installation several times and had to restore from image before finding our way through the recursive mess of dependencies to a working solution.
wow, that seems odd. It's very unusual. I guess your Ubuntu was either not in a very original state (e.g. non-default package repositories) or in a very unlucky state. Or maybe you did use a high level program that got confused by the dependencies?
I just had to try and it worked in docker, log below. I ran `apt-get install` for each dependency in the order given in the wiki. For our build tests, we create a Docker image where we just pass everything at once to `apt-get` which works too.
Doing this by hand, I noticed that the wiki was outdated wrt. libusb. We use libusb-1.0 only by now.
Last but not least, I tried installing libudev-dev only. Turns out there is no dependency on libpci-dev. Maybe that was an error that got corrected sometime?
Nico
[icon@bob ~]$ docker run -it --rm ubuntu:xenial Unable to find image 'ubuntu:xenial' locally xenial: Pulling from library/ubuntu 61e03ba1d414: Pull complete 4afb39f216bd: Pull complete e489abdc9f90: Pull complete 999fff7bcc24: Pull complete Digest: sha256:1b733ff6c7c7aac32101a35cb2c6399ca8c399a9f6de62a386abe26c65b59b9e Status: Downloaded newer image for ubuntu:xenial root@9f4291ed0a07:/# cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xenial DISTRIB_DESCRIPTION="Ubuntu 16.04.7 LTS" root@9f4291ed0a07:/# apt-get update Get:1 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB] Get:2 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB] Get:3 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB] Get:4 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB] Get:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages [1558 kB] Get:6 http://archive.ubuntu.com/ubuntu xenial/restricted amd64 Packages [14.1 kB] Get:7 http://archive.ubuntu.com/ubuntu xenial/universe amd64 Packages [9827 kB] Get:8 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [2051 kB] Get:9 http://security.ubuntu.com/ubuntu xenial-security/restricted amd64 Packages [15.9 kB] Get:10 http://security.ubuntu.com/ubuntu xenial-security/universe amd64 Packages [984 kB] Get:11 http://security.ubuntu.com/ubuntu xenial-security/multiverse amd64 Packages [8820 B] Get:12 http://archive.ubuntu.com/ubuntu xenial/multiverse amd64 Packages [176 kB] Get:13 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages [2559 kB] Get:14 http://archive.ubuntu.com/ubuntu xenial-updates/restricted amd64 Packages [16.4 kB] Get:15 http://archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages [1544 kB] Get:16 http://archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 Packages [26.2 kB] Get:17 http://archive.ubuntu.com/ubuntu xenial-backports/main amd64 Packages [10.9 kB] Get:18 http://archive.ubuntu.com/ubuntu xenial-backports/universe amd64 Packages [12.7 kB] Fetched 19.4 MB in 3s (5301 kB/s) Reading package lists... Done root@9f4291ed0a07:/# apt-get install pciutils-dev Reading package lists... Done Building dependency tree Reading state information... Done Note, selecting 'libpci-dev' instead of 'pciutils-dev' The following additional packages will be installed: libc-dev-bin libc6-dev libpci3 libudev-dev linux-libc-dev manpages manpages-dev zlib1g-dev Suggested packages: glibc-doc man-browser The following NEW packages will be installed: libc-dev-bin libc6-dev libpci-dev libpci3 libudev-dev linux-libc-dev manpages manpages-dev zlib1g-dev 0 upgraded, 9 newly installed, 0 to remove and 0 not upgraded. Need to get 6502 kB of archives. After this operation, 25.0 MB of additional disk space will be used. Do you want to continue? [Y/n] Get:1 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libudev-dev amd64 229-4ubuntu21.31 [150 kB] Get:2 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libpci3 amd64 1:3.3.1-1.1ubuntu1.3 [24.3 kB] Get:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 manpages all 4.04-2 [1087 kB] Get:4 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libc-dev-bin amd64 2.23-0ubuntu11.3 [68.6 kB] Get:5 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 linux-libc-dev amd64 4.4.0-210.242 [832 kB] Get:6 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libc6-dev amd64 2.23-0ubuntu11.3 [2083 kB] Get:7 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 zlib1g-dev amd64 1:1.2.8.dfsg-2ubuntu4.3 [167 kB] Get:8 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libpci-dev amd64 1:3.3.1-1.1ubuntu1.3 [42.8 kB] Get:9 http://archive.ubuntu.com/ubuntu xenial/main amd64 manpages-dev all 4.04-2 [2048 kB] Fetched 6502 kB in 1s (5554 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libudev-dev:amd64. (Reading database ... 4785 files and directories currently installed.) Preparing to unpack .../libudev-dev_229-4ubuntu21.31_amd64.deb ... Unpacking libudev-dev:amd64 (229-4ubuntu21.31) ... Selecting previously unselected package libpci3:amd64. Preparing to unpack .../libpci3_1%3a3.3.1-1.1ubuntu1.3_amd64.deb ... Unpacking libpci3:amd64 (1:3.3.1-1.1ubuntu1.3) ... Selecting previously unselected package manpages. Preparing to unpack .../manpages_4.04-2_all.deb ... Unpacking manpages (4.04-2) ... Selecting previously unselected package libc-dev-bin. Preparing to unpack .../libc-dev-bin_2.23-0ubuntu11.3_amd64.deb ... Unpacking libc-dev-bin (2.23-0ubuntu11.3) ... Selecting previously unselected package linux-libc-dev:amd64. Preparing to unpack .../linux-libc-dev_4.4.0-210.242_amd64.deb ... Unpacking linux-libc-dev:amd64 (4.4.0-210.242) ... Selecting previously unselected package libc6-dev:amd64. Preparing to unpack .../libc6-dev_2.23-0ubuntu11.3_amd64.deb ... Unpacking libc6-dev:amd64 (2.23-0ubuntu11.3) ... Selecting previously unselected package zlib1g-dev:amd64. Preparing to unpack .../zlib1g-dev_1%3a1.2.8.dfsg-2ubuntu4.3_amd64.deb ... Unpacking zlib1g-dev:amd64 (1:1.2.8.dfsg-2ubuntu4.3) ... Selecting previously unselected package libpci-dev. Preparing to unpack .../libpci-dev_1%3a3.3.1-1.1ubuntu1.3_amd64.deb ... Unpacking libpci-dev (1:3.3.1-1.1ubuntu1.3) ... Selecting previously unselected package manpages-dev. Preparing to unpack .../manpages-dev_4.04-2_all.deb ... Unpacking manpages-dev (4.04-2) ... Processing triggers for libc-bin (2.23-0ubuntu11.3) ... Setting up libudev-dev:amd64 (229-4ubuntu21.31) ... Setting up libpci3:amd64 (1:3.3.1-1.1ubuntu1.3) ... Setting up manpages (4.04-2) ... Setting up libc-dev-bin (2.23-0ubuntu11.3) ... Setting up linux-libc-dev:amd64 (4.4.0-210.242) ... Setting up libc6-dev:amd64 (2.23-0ubuntu11.3) ... Setting up zlib1g-dev:amd64 (1:1.2.8.dfsg-2ubuntu4.3) ... Setting up libpci-dev (1:3.3.1-1.1ubuntu1.3) ... Setting up manpages-dev (4.04-2) ... Processing triggers for libc-bin (2.23-0ubuntu11.3) ... root@9f4291ed0a07:/# apt-get install zlib1g-dev Reading package lists... Done Building dependency tree Reading state information... Done zlib1g-dev is already the newest version (1:1.2.8.dfsg-2ubuntu4.3). zlib1g-dev set to manually installed. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. root@9f4291ed0a07:/# apt-get install libftdi-dev Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: libftdi1 libusb-dev The following NEW packages will be installed: libftdi-dev libftdi1 libusb-dev 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. Need to get 211 kB of archives. After this operation, 2276 kB of additional disk space will be used. Do you want to continue? [Y/n] Get:1 http://archive.ubuntu.com/ubuntu xenial/universe amd64 libftdi1 amd64 0.20-4build1 [15.2 kB] Get:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libusb-dev amd64 2:0.1.12-28 [29.9 kB] Get:3 http://archive.ubuntu.com/ubuntu xenial/universe amd64 libftdi-dev amd64 0.20-4build1 [166 kB] Fetched 211 kB in 0s (1038 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libftdi1:amd64. (Reading database ... 8522 files and directories currently installed.) Preparing to unpack .../libftdi1_0.20-4build1_amd64.deb ... Unpacking libftdi1:amd64 (0.20-4build1) ... Selecting previously unselected package libusb-dev. Preparing to unpack .../libusb-dev_2%3a0.1.12-28_amd64.deb ... Unpacking libusb-dev (2:0.1.12-28) ... Selecting previously unselected package libftdi-dev. Preparing to unpack .../libftdi-dev_0.20-4build1_amd64.deb ... Unpacking libftdi-dev (0.20-4build1) ... Processing triggers for libc-bin (2.23-0ubuntu11.3) ... Setting up libftdi1:amd64 (0.20-4build1) ... Setting up libusb-dev (2:0.1.12-28) ... Setting up libftdi-dev (0.20-4build1) ... Processing triggers for libc-bin (2.23-0ubuntu11.3) ... root@9f4291ed0a07:/# apt-get install libusb-dev Reading package lists... Done Building dependency tree Reading state information... Done libusb-dev is already the newest version (2:0.1.12-28). libusb-dev set to manually installed. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. root@9f4291ed0a07:/# apt-get install libusb-1.0-0-dev Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: libusb-1.0-0 libusb-1.0-doc The following NEW packages will be installed: libusb-1.0-0 libusb-1.0-0-dev libusb-1.0-doc 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. Need to get 262 kB of archives. After this operation, 1808 kB of additional disk space will be used. Do you want to continue? [Y/n] Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libusb-1.0-0 amd64 2:1.0.20-1 [42.9 kB] Get:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libusb-1.0-0-dev amd64 2:1.0.20-1 [58.5 kB] Get:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 libusb-1.0-doc all 2:1.0.20-1 [160 kB] Fetched 262 kB in 0s (1051 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libusb-1.0-0:amd64. (Reading database ... 8696 files and directories currently installed.) Preparing to unpack .../libusb-1.0-0_2%3a1.0.20-1_amd64.deb ... Unpacking libusb-1.0-0:amd64 (2:1.0.20-1) ... Selecting previously unselected package libusb-1.0-0-dev:amd64. Preparing to unpack .../libusb-1.0-0-dev_2%3a1.0.20-1_amd64.deb ... Unpacking libusb-1.0-0-dev:amd64 (2:1.0.20-1) ... Selecting previously unselected package libusb-1.0-doc. Preparing to unpack .../libusb-1.0-doc_2%3a1.0.20-1_all.deb ... Unpacking libusb-1.0-doc (2:1.0.20-1) ... Processing triggers for libc-bin (2.23-0ubuntu11.3) ... Setting up libusb-1.0-0:amd64 (2:1.0.20-1) ... Setting up libusb-1.0-0-dev:amd64 (2:1.0.20-1) ... Setting up libusb-1.0-doc (2:1.0.20-1) ... Processing triggers for libc-bin (2.23-0ubuntu11.3) ...