linux/riscv64 platform#139
Conversation
This fixes "Error loading shared library libgcc_s.so.1: No such file or directory" encountered when running the alpine image on riscv64 (and potentially other architectures where nh3 package must be build from sources).
|
Thanks for the pull request! Yeah, the increase in compile time is usually what limits me to include more archs, there is a hard cap of 6 hours (which is surprisingly easy to hit) which we need to keep below. I just wanted to test this our locally, but seems to get the following error on Alpine, anything you are familiar with before I dig deeper? |
Can't say that I am: in my local testing both the
Interesting message there. I wonder if this could be due to us using different versions of QEMU or the And thanks for your inline comments, I'll be sure to address them, hopefully some time tonight. |
|
Just add some random high timeout on the builds, and we can reduce them after the chack run here :) Tried it out on a little bit older Debian (11 bullseye) system, 8 cores 64 GB RAM. It builds well, except for the Alpine riscv one. |
|
I increased build timeouts to 30 minutes for the client images (not much compiling from sources going on there, so should be plenty), and to 120 and 240 minutes for the Debian and the Alpine server images respectively. IIRC
Well, that's twice the RAM I have, and those versions are the same as on my local I might be grasping at straws here, but could it be due to us building on top of different versions of the FWIW I also just tested the |
|
Yeah, did a test build on another system, and it went fine there. Will await the build time result for the GitHub runners, but if they succeed we just merge this and I will have to debug the first computer later :) |
Hi.
Thank you so much for maintaining these images and for the helpful documentation!
This adds
linux/riscv64platform todevanddev-alpinetargets of bothMakefiles, as well as couple of additional dependencies to theDockerfile's fordevpi-serverspecifically.Several of the
devpi-serverrequirements don't ship pre-built wheels for RISC-V on PyPI, thus needing to be compiled from source duringpip installon that platform. At least one of them (nh3, I believe) requires Rust, hence the build-timecargodependency. Additionally, for thealpinevariant of the image specifically,libgccis added as a runtime dependency, since one of the built binaries attempts to locatelibgcc_s.so.1at server runtime.I also took the liberty of adding
linux/riscv64to theplatformslists in GitHub Actions for all images. Though note that the aforementioned added compilation time for multiple requirements on RISC-V does significantly increase the total multiplatform image build time fordevpi-server.