Mycroft-precise seems impossible to build on RPi4 bullseye

I’m at my wits end with the current HEAD from the dev branch. I’m running a 32-bit Raspberry Pi OS bullseye on an RPi 4 and python3.7 and the dependency hell is burning hot.

  • had to pip install <URL to tensorflow-1.13.1-cp37-none-linux_armv7l.whl> manually as no TF versions could be found otherwise
  • wavio > 0.0.4 requires numpy 1.19 or so. So I pinned it to 0.0.4
  • several dependencies pull in scipy 1.7.3 which depends on numpy 1.16.5, which is incompatible with the numpy 1.16.0 pinned in I tried pinning scipy to 1.5.4 which works with older numpy versions. This satisfied pip but running the example script from the README gave me ValueError: numpy.ndarray size changed, may indicate binary incompatibility. Expected 44 from C header, got 40 from PyObject so apparently just downgrading things willy-nilly won’t make this work after all.

I only started looking at the source install because running mycroft-collect from the precise-all 0.3.0 release zip was giving me segfault errors and mycroft-train errored out in another way. Figured this wouldn’t happen if I built it from source for my platform. Didn’t realize the “if” clause is impossible to satisfy without a perfect understanding of which versions of numpy all those libs depend on and whether there can even be a common denominator between them.

Has anybody had success with this?
The only thing working for me is the precise-engine 0.2.0 that I think was automatically installed by mycroft. (I don’t recall installing it myself, even though I’m running mycroft from the clone git repo). Unfortunately, that distribution only comes with the precise-engine executable and not the tools for training which I’m interested in at present.

Once again a pointer to a good discussion. Need to use Ubuntu 18.04.6 - and the article suggests (and I can confirm this works) using a VirtualBox VM:

1 Like


by now i have tried the ubuntu 20 install i have on my desktop machine and with some coaxing i have been able to make it build successfully.

Your link is still helpful because i would prefer to be running mycroft-collect on the pi instead of my desktop machine. I’m just not looking forward to installing virtualbox on it. That’s always such a hassle in my experience. But maybe things are easier if I just do a headless install

I did not install the VM on my RPi - but on my Windows desktop which is a much more powerful and roomy environment.