Skip to content
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

Build fails on armv7 #49

Closed
3 tasks done
Jihadist opened this issue Jul 10, 2021 · 6 comments
Closed
3 tasks done

Build fails on armv7 #49

Jihadist opened this issue Jul 10, 2021 · 6 comments
Assignees
Labels
bug Something isn't working

Comments

@Jihadist
Copy link

Make sure you completed the following tasks

Environment and version details

  • Operating System+version: Linux Debian Buster
  • Compiler+version: GCC 8.3
  • Shell: bash
  • Docker image: multiarch/debian-debootstrap:armhf-buster

Brief problem description

Build fails on armv7 (debian armhf)

Actually problem reported boostorg/build#663 here as Boost problem (but it's not a Boost problem), then I reported it there conan-io/conan-center-index#6059 but i think it's better place for this (thanx to @madebr)

@Jihadist Jihadist added the bug Something isn't working label Jul 10, 2021
@Kojoley
Copy link
Contributor

Kojoley commented Jul 10, 2021

For some reason GLOB returns nothing there.

@Kojoley
Copy link
Contributor

Kojoley commented Jul 10, 2021

I am inclined to say that the docker image is broken. The example from man for scandir (https://man7.org/linux/man-pages/man3/scandir.3.html#EXAMPLES) spits an error: scandir: Value too large for defined data type.

@Kojoley
Copy link
Contributor

Kojoley commented Jul 10, 2021

So, the workaround is ./bootstrap.sh --cxxflags=-D_FILE_OFFSET_BITS=64. If I understand correctly, when defined(_LARGEFILE64_SOURCE) || _POSIX_C_SOURCE >= 200809L a lot of file-system related functions with 64 suffix are available and could be used instead (like open64, stat64, scandir64 and etc.) to fix the issue.

@grafikrobot
Copy link
Member

FYI.. I'm trying to set up some QEMU arm testing to try and fix this.

@grafikrobot
Copy link
Member

The suggested workaround doesn't seem to have any effect. Or rather just adding the -D_FILE_OFFSET_BITS=64 does nothing. Assuming this is a problem of the qemu layer having missing entry points (or redirected ones) then the solution is going be a bit more involved.

@grafikrobot
Copy link
Member

Scratch that.. it does appear _FILE_OFFSET_BITS=64 does resolve the issue. Making that change shortly.

grafikrobot added a commit that referenced this issue Sep 27, 2021
When running b2 inside a qemu mixed mode environment (32 inside 64)
it errors with some system calls not properly translating from 64 to 32.
This works around the problem by making the 32 bit b2 build use 64 bit
file system calls in libc.

Potentially fix for:
* #49
* conan-io/conan-center-index#6059
* boostorg/build#663
psandana pushed a commit to psandana/b2 that referenced this issue Feb 24, 2022
When running b2 inside a qemu mixed mode environment (32 inside 64)
it errors with some system calls not properly translating from 64 to 32.
This works around the problem by making the 32 bit b2 build use 64 bit
file system calls in libc.

Potentially fix for:
* bfgroup#49
* conan-io/conan-center-index#6059
* boostorg/build#663
psandana pushed a commit to psandana/b2 that referenced this issue Feb 24, 2022
Add ppc64 Ubuntu testing to verify that there are no more qemu
problems.

Fixes bfgroup#49 - boostorg/build#663
fspindle added a commit to s-trinh/visp that referenced this issue Nov 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants