Found a bugzilla issue that seems like it's similar: https://bugzilla.redhat.com/show_bug.cgi?id=2273542
Sounds like the fix is to install nodejs from the fedora "updates" repo when building the container. I've created a PR that does this, but it's hard for me to tests since my machine doesn't have the SIGILL error. But I have confirmed it installs nodejs 20.12.2 which the issue says includes the fix.
https://github.com/apache/daffodil/pull/1256 On 2024-06-06 12:03 AM, Mike Beckerle wrote:
Strange issue. I have found that using fedora 39 fixes this. So the rest of this may be TL;DR. This is more for posterity on our dev list in case someone else runs into similar issues. So I'm trying to build a release candidate, I'm using a computer, running ubuntu 22.04, just an older laptop I have at home. Still an intel i7 cpu. Still quite fast, but the machine dates from Feb 2012 so it is 12 years old or so. The podman command podman build -t daffodil-release-candidate containers/release-candidate Fails with something I've not seen in a LONG time: illegal instruction: STEP 13/15: RUN npm --no-update-notifier install --global yarn@1.22.19 container exited on illegal instruction Error: error building at STEP "RUN npm --no-update-notifier install --global yarn@1.22.19": error while running runtime: exit status 1 I have reinstalled podman via 'sudo apt-get install --reinstall podman' but the behavior does not change. So I tried installing docker. Also fails with exit code 132 which a web search says is SIGILL (illegal instruction). This did not happen on my many years newer official work laptop, also running ubuntu 22.04. Online research says that the npm is wrong match for the system. But nothing in the Dockerfile specifies any particular version of npm. It's just the fedora 40 one. So I backed out to fedora 39 in the Dockerfile. I am getting somewhere again now using podman.