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

No bazel5 on fedora:36 (and fedora:latest) #18

Closed
Mizux opened this issue May 13, 2022 · 3 comments
Closed

No bazel5 on fedora:36 (and fedora:latest) #18

Mizux opened this issue May 13, 2022 · 3 comments

Comments

@Mizux
Copy link

Mizux commented May 13, 2022

Docker hub just migrate fedora:latest to fedora:36 and we can't install bazel5 following the bazel install step....
ref: https://hub.docker.com/_/fedora
ref: https://bazel.build/install/redhat

https://download.copr.fedorainfracloud.org/results/vbatts/bazel/fedora-35-x86_64/ (bazel5)
https://download.copr.fedorainfracloud.org/results/vbatts/bazel/fedora-36-x86_64/ (no bazel5)

Any ETA ?

EDIT: I don't know the fedora CI ecosystem but I guess there is some culprit here: https://copr.fedorainfracloud.org/coprs/vbatts/bazel/build/3493215/

ps: If you need/want to give away maintenance/ownership of this package let me know ;)

@vbatts
Copy link
Owner

vbatts commented Jun 12, 2022

@Mizux thanks for reaching out. Apologies I missed this!

It seems compiling bazel often is wrestling with <limits>. Since I last looked at this, there is still an issue:

SUBCOMMAND: # //src/main/cpp/util:filesystem [action 'Compiling src/main/cpp/util/file.cc', configuration: 420d59a20d5e3ca2685f8568af0bd1d01d366261653c3073d6906d0b217c0b95, execution platform: //:default_host_platform]
(cd /var/tmp/bazel_nEPnpFUI/out/execroot/io_bazel && \
  exec env - \
    PATH=/root/rpmbuild/BUILD/bazel-5.2.0/bin-hack:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin \
    PWD=/proc/self/cwd \
  /usr/bin/gcc -U_FORTIFY_SOURCE -fstack-protector -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer -g0 -O2 '-D_FORTIFY_SOURCE=1' -DNDEBUG -ffunction-sections -fdata-sections '-std=c++0x' -MD -MF bazel-out/k8-opt/bin/src/main/cpp/util/_objs/filesystem/file.pic.d '-frandom-seed=bazel-out/k8-opt/bin/src/main/cpp/util/_objs/filesystem/file.pic.o' -fPIC -DBLAZE_OPENSOURCE -iquote . -iquote bazel-out/k8-opt/bin -include/usr/include/c++/11/limits -fno-canonical-system-headers -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' -c src/main/cpp/util/file.cc -o bazel-out/k8-opt/bin/src/main/cpp/util/_objs/filesystem/file.pic.o)
# Configuration: 420d59a20d5e3ca2685f8568af0bd1d01d366261653c3073d6906d0b217c0b95
# Execution platform: //:default_host_platform
ERROR: /root/rpmbuild/BUILD/bazel-5.2.0/src/main/cpp/util/BUILD:34:11: Compiling src/main/cpp/util/file.cc failed: (Exit 1): gcc failed: error executing command 
  (cd /var/tmp/bazel_nEPnpFUI/out/execroot/io_bazel && \
  exec env - \
    PATH=/root/rpmbuild/BUILD/bazel-5.2.0/bin-hack:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin \
    PWD=/proc/self/cwd \
  /usr/bin/gcc -U_FORTIFY_SOURCE -fstack-protector -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer -g0 -O2 '-D_FORTIFY_SOURCE=1' -DNDEBUG -ffunction-sections -fdata-sections '-std=c++0x' -MD -MF bazel-out/k8-opt/bin/src/main/cpp/util/_objs/filesystem/file.pic.d '-frandom-seed=bazel-out/k8-opt/bin/src/main/cpp/util/_objs/filesystem/file.pic.o' -fPIC -DBLAZE_OPENSOURCE -iquote . -iquote bazel-out/k8-opt/bin -include/usr/include/c++/11/limits -fno-canonical-system-headers -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' -c src/main/cpp/util/file.cc -o bazel-out/k8-opt/bin/src/main/cpp/util/_objs/filesystem/file.pic.o)
# Configuration: 420d59a20d5e3ca2685f8568af0bd1d01d366261653c3073d6906d0b217c0b95
# Execution platform: //:default_host_platform
<command-line>: fatal error: /usr/include/c++/11/limits: No such file or directory
compilation terminated.
Target //src:bazel_nojdk failed to build
INFO: Elapsed time: 95.831s, Critical Path: 14.19s
INFO: 384 processes: 36 internal, 348 local.
FAILED: Build did NOT complete successfully

ERROR: Could not build Bazel
error: Bad exit status from /var/tmp/rpm-tmp.uew7RG (%build)

I recreated this just by bumping the version:

diff --git a/bazel.spec b/bazel.spec
index de58e68..dbf8389 100644
--- a/bazel.spec
+++ b/bazel.spec
@@ -3,7 +3,7 @@
 %define _disable_source_fetch 0
 
 Name:           bazel5
-Version:        5.0.0
+Version:        5.2.0
 Release:        0%{?dist}
 Summary:        Correct, reproducible, and fast builds for everyone.
 License:        Apache License 2.0

and then from this project's repo, run make .container.rebuild (double checking that your fedora:latest image is actually fedora36)

also, yes I need to hand over maintainership on the fedora builds

@Mizux
Copy link
Author

Mizux commented Jun 13, 2022

  1. Need to check if these lines are still relevant
    %if 0%{?fedora} >= 34
    export CXXFLAGS="-include /usr/include/c++/11/limits -include /usr/include/c++/11/functional"
    export EXTRA_BAZEL_ARGS="${EXTRA_BAZEL_ARGS} --cxxopt=-include/usr/include/c++/11/limits"
    %endif

ps: I link this issue with Bazel 5 issue tracker, hope bazel folks will support you...
pps: Currently I cannot test locally in a fedora:36 docker since my corporate docker engine is 20.10.2 -_-
ref: https://pascalroeleven.nl/2021/09/09/ubuntu-21-10-and-fedora-35-in-docker/

vbatts added a commit that referenced this issue Jul 7, 2022
per #18 (comment)

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
@Mizux
Copy link
Author

Mizux commented Aug 29, 2022

Bazel5 available on Fedora:latest (36) -> closing

FROM fedora:latest

RUN dnf -y install dnf-plugins-core \
&& dnf -y copr enable vbatts/bazel \
&& dnf -y install bazel5

RUN bazel version

Trace last command

bazel version
WARNING: Invoking Bazel in batch mode since it is not invoked from within a workspace (below a directory having a WORKSPACE file).
Extracting Bazel installation...
Build label: 5.3.0
Build target: bazel-out/k8-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Tue Aug 23 00:00:00 2022 (1661212800)
Build timestamp: 1661212800
Build timestamp as int: 1661212800

ps: Thx vbatts !

@Mizux Mizux closed this as completed Aug 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants