-
Notifications
You must be signed in to change notification settings - Fork 894
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鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build failures on 32-bit archs: int overflows #3125
Comments
Thanks for opening this, @CyrilBrulebois. Can you elaborate on the use case, where you use it, etc? Because until now, we have never had a use case where we needed to support Ent in 32-bit architecture, as most servers or developer workstations are 64-bit. |
Traditionally, Linux distributions have built and made available packages on all the architectures they support. On Debian, and presumably Ubuntu, That being said, we have I agree that 32-bit architectures are getting phased out nowadays, but historical Regarding the companion #3126's closure, I agree that it's the same topic; I opened two different issues initially to have a build-time vs. run-time granularity. I could fix (or work around) the first one via the patch I attached here, I can't do the same for the second one. |
Current Behavior 馃槸
ent
doesn't build on 32-bit architectures (e.g.armel
,armhf
, andi386
exhibit the issue, as seen withautopkgtest
runs on https://ci.debian.net/), due to a few overflows/type issues:Expected Behavior 馃
It should build.
Steps to Reproduce 馃暪
Build ent in a 32-bit environment. This is easily achieved by setting up an i386 chroot on an amd64 machine.
On Debian/Ubuntu systems, this can be done by throwing the current source package in unstable at cowbuilder, which automates setting up a build chroot, installing build dependencies in it, and cleaning up after a build (successful or not).
Steps:
dget https://deb.debian.org/debian/pool/main/g/golang-entgo-ent/golang-entgo-ent_0.11.3-3.dsc
sudo cowbuilder --create --distribution unstable --architecture i386 --basepath /var/cache/pbuilder/unstable-i386-base.cow
sudo cowbuilder --build golang-entgo-ent_0.11.3-3.dsc --basepath /var/cache/pbuilder/unstable-i386-base.cow
Your Environment 馃寧
Debian unstable, any 32-bit architecture.
With the attached patch, the build succeeds, but then runtime tests fail. I'll file a companion ticket for those.
0003-avoid-overflows-on-32-bit-systems.patch.txt
The text was updated successfully, but these errors were encountered: