Hi Michael,

Last time I set up environment to build flashrom, I installed all these in order:

pciutils
libpci-dev
libusb-dev
libusb-1.0-0-dev
libjaylink0
libjaylink-dev
cmake
libftdi1-dev

I haven’t flashed anything with ft2232_spi (however this programmer builds), maybe not entirely relevant to you? But this is sufficient to have the choice of ft2232_spi, as I can see:

 -p | --programmer <name>[:<param>] specify the programmer device. One of
    internal, dummy, mec1308, nic3com, nicrealtek, nicnatsemi, gfxnvidia,
    raiden_debug_spi, drkaiser, satasii, atahpt, atavia, atapromise, it8212,
    ft2232_spi, serprog, buspirate_spi, dediprog, developerbox, ene_lpc,
    rayer_spi, pony_spi, nicintel, nicintel_spi, nicintel_eeprom, ogp_spi,
    satamv, linux_mtd, linux_spi, lspcon_i2c_spi, realtek_mst_i2c_spi,
    usbblaster_spi, mstarddc_spi, pickit2_spi, ch341a_spi, digilent_spi,
    jlink_spi, stlinkv3_spi.

Manually editing dependency in control file, wow this is so cool! I wouldn’t be able to do such a thing by myself. So I was looking for a sequence of packages that works.

Anastasia.

On Wed, Jul 14, 2021 at 2:03 AM Michael Leukert - AMPEGON <Michael.Leukert@ampegon.com> wrote:
Hello Nico

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. 

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. 

I specifically want to mention that it was actually impossible without manipulating one of the packages' recursive dependencies: libudev-dev (required by direct dependency libpci-dev).  We literally had to unpack libudev-dev_229-4ubuntu21.27_i386.deb, manually edit the dependency version for libudev1 in the control file, and then re-pack it as a .deb file (see "My guess is..." and " This works, and probably..." at https://askubuntu.com/questions/779300/cant-install-libudev-dev-on-ubuntu-16-04).  It was simply impossible without manipulating this dependency.  Is this normal?  Or even safe?  If yes on both questions, would it make sense to place a hint about this at https://flashrom.org/Downloads

In any case, thank you for providing this excellent software and the prompt support!

Cheers from Switzerland

Michael


-----Ursprüngliche Nachricht-----
Von: Nico Huber <nico.h@gmx.de>
Gesendet: Donnerstag, 8. Juli 2021 17:30
An: Michael Leukert - AMPEGON <Michael.Leukert@ampegon.com>; flashrom@flashrom.org
Betreff: Re: [flashrom] Unknown programmer "ft2232_spi"

Hello Michael,

On 05.07.21 18:54, Michael Leukert - AMPEGON wrote:
> Do you have any idea why our flashrom v0.9.9 won't accept ft2232_spi as a programmer?

flashrom's build process is quite flexible. It's very likely that this Ubuntu package was simply build without FTDI support.

>
> Surprisingly, even the man page claims that ft2232_spi is supported:

Alas, the manpage is not automatically adapted to the build options.

You can build flashrom from source, here are some hints[1]. Basically, after installing the mentioned prerequisites, you download the flashrom source

  $ git clone https://review.coreboot.org/flashrom.git

and build it with

  $ cd flashrom
  $ make

If you want to install it, also

  $ sudo make install

If you don't install it, you'll have to always specify the path to the program, e.g.

  $ ./flashrom -p ...

or

  $ ~/flashrom/flashrom -p ...

Hope that helps,
Nico

[1] https://flashrom.org/Download
_______________________________________________
flashrom mailing list -- flashrom@flashrom.org
To unsubscribe send an email to flashrom-leave@flashrom.org