-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Value too large for defined data type; class=Os (2) (but only when using a build.rs) #9545
Comments
Thanks for the detailed reproduction! I believe this is a duplicate of #8719. There is some more detail there, and a link to the qemu bug. It looks like there was some activity just a few months ago about getting new APIs into the Linux kernel, but it sounds like it stalled. I'm still unsure about the libgit2 changes that could potentially make this work. |
Hello @ehuss , thanks for the quick reply! So, not really a duplicate, since the problem happens ONLY when I add a So, the main problem is that this happens only when I use a Does something different on the build process happen when I use |
Oh, yea, sorry, I should have clarified. You should be able to avoid it by printing |
Humm, unfortunately, it is still not working, even after adding a line for return if changed |
Oh, hmm, sorry about that! It does not appear to be working as I expected. There's an edge case during the first build (when Not sure if you can run it in that tmpfs or not. Or if you can maybe cross compile outside of qemu. |
Hi to everyone! Coincidentally as I mentioned here in #8719, I also faced similar issue yesterday. Historically, there have been issues like GoogleContainerTools/distroless#513 which fixed issues with glibc by adopting to multiarch support i.e. (musl-glibc) like mentioned in GoogleContainerTools/distroless#225 that is slightly different but similar to our case. Hence, for now there are only three practical solutions remain to this issue for building 32-bit ARM binaries/libraries (armv7).
Lastly, a good experimentation for someone might be to cross-compile an armv7 application on an i686 machine using qemu, just for the sake of curiosity. EDIT: More details of this problem attached here. There seems to be possibility that problem underlying the QEMU is glibc which could be currently due to Another one is rather old but have similarities with our case too enigmagroup/enigmabox-openwrt#10 |
Hello @diabloxenon . As I have stated on the description of this issue, I can already build it for multiple architectures, using tmpfs. The problem appears ONLY when I add a |
Hi @leoniloris. I do understand the problem residing with Even though, this problem occurs on different places due to latter using The point is, there are many dependencies underneath the OS which are using For more information about this problem, read here |
- CI | DietPi-Software: Workaround for failing 32-bit ARM Rust builds on ext4 in QEMU emulated container on 64-bit host: rust-lang/cargo#9545
- DietPi-Software | SABnzbd: Resolved an issue where the service start failed on Buster systems since SABnzbd v4 does not support Python 3.7 anymore. The latest SABnzbd v3 is now installed instead on Buster systems. Many thanks to @githubchonger for reporting this issue: sabnzbd/sabnzbd#2545 - DietPi-Software | SABnzbd: Resolved an issue where the install failed on RISC-V and ARMv6/7 Bookworm systems due to missing dependencies for Python module builds. - DietPi-Software | UnRAR: Resolved an issue where the install failed on RISC-V systems, since the non-free "unrar" package is not available for this architecture yet. "unrar-free" is now installed instead. - DietPi-Software | SABnzbd: Add temporary workaround for all ARMv6/7 systems: piwheels/packages#358 - CI | DietPi-Software: Fix potential OOM kills on GitHub Actions runners by not storing the whole container image on tmpfs. ARMv6/7 containers however then require /root to be on a tmpfs, else Rust installs fail: rust-lang/cargo#9545 Co-authored-by: MichaIng <micha@dietpi.com>
Problem
I see the error
Value too large for defined data type; class=Os (2)
when building with cargo on a github action IF AND ONLY IF I have a filebuild.rs
(even if this file is literally just an empty function).When I don't have this file, the problem disappears (the file is doing nothing functionally. it is literally empty)
Steps
fully reproducible here:
with only two commits (and two runs on the actions), so one can see that literally, when I remove the file
build.rs
, the build goes through.Possible Solution(s)
Remove the file
build.rs
Notes
cargo version 1.52.0 (6976741 2021-04-21)
same issue here uraimo/run-on-arch-action#46 but since I don't know if it is a cargo issue or github actions issue, I'll post on both (for now. I'll close the unrelated one when we discover what's happening)
The text was updated successfully, but these errors were encountered: