-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
Not working on SLES 11.3 #50
Comments
hanwen: I though the binary was completely static, I guess we don't bundle the GLIBC (make sense though). Can we lower the version of GLIBC needed? Or should we just mark that as another prerequesite to have bazel? |
note that Suse 12.3 comes with glib 2.17 (v2.17-4.7.1 for me atm) so higher versions seem to work. |
The protoc binary we have now is 100% statically linked and should work on kernel 2.6.8 and later. |
Just as a heads up, I've updated our protobuf library and compiler to the official binaries supplied by the protobuf team. The protoc binary is dynamically linked, but was built in a carefully crafted Docker container to make sure that it works with nearly all Linux versions out there. I've tested it anyway, though, and as long as your Linux has glibc 2.5 or higher, we should be fine. This means: CentOS 5.x, Ubuntu 7.04, Debian 5 (Lenny) and SuSE Linux Enterprise 11 or higher are supported. If this breaks anyone, please reply to this issue and we'll find a solution. |
Hi, I'm working on a RHEL6 system (kernel 2.6.32-431.5.1.el6.x86_64) with glibc 2.12, but I get the following error when I run the 0.1.0 release:
Upgrading glibc isn't really an option, but this thread suggests that I shouldn't have to. Any ideas? |
@skearnes - we can't support everything for the binary release. Have you tried compiling it from source? |
Yes; many times. The default gcc on the cluster is 4.4.7 and I get errors like:
When I load an updated compiler module (gcc 4.8.1), I get:
With a gcc 4.9.3 module I get:
That last traceback seems to suggest that it's not actually using the updated compiler, but editing CROSSTOOL seems error-prone without some guidance. |
+1 for @skearnes 's issue...in particular we are also seeing the last output in his comment (CentOS 6.6, GCC 4.9.1, glibc 2.12).
This is blocking our installation of @tensorflow -- both the binaries for that library and the binaries for Bazel are linked against glibc 2.17, so we need to compile from source. |
Facing the exact same issue as @skearnes . Not able to build bazel on RHEL6 with glibc2.12 - Here's the error I am getting - INFO: You can skip this first step by providing a path to the bazel binary as second argument: This is blocking our installation of @tensorflow -- both the binaries for that library and the binaries for Bazel are linked against glibc 2.17, so we need to compile from source. |
@damienmg People are neither able to use our binary releases (due to incompatibility with the glibc we link them against), nor build Bazel from source. Do you have an idea what we could do here? |
I wonder whether compiling bazel within a docker container would be helpful. That would probably also require to compile against glibc statically. Then get a statically compiled binary that runs everywhere (like docker itself) |
@kohlerm , @damienmg - Docker might work but a vanilla RHEL6 install (both binary and source) not working for anyone is certainly frustrating. And given that bazel is a pre-requisite for building other Google offerings like Tensorflow (which doesn't have pre-built binaries for RHEL6/glibc2.12 either) makes it a real blocker. |
Normally compiling with CC, CXX and the likes flag should make the bootstrap work and editing tools/cpp/CROSSTOOL file should make bazel build works. If gcc is not in /usr/bin, those error will continue to happens. We are working on better configurabilty of Bazel build but we are not yet here. |
As seen in the link above, we have a very similar problem with the HPC system at University of Sheffield. |
I have a similar problem with Redhat 6.7 |
Facing the same issue on RHEL6 it is is blocking our tensorflow build |
The precise issue with build-runfiles should be gone at HEAD hopefully in the afternoon. So only tuning tools/cpp/CROSSTOOL should be enough to works for custom C++ compilers (if they support the c++0x standard). |
Both RHEL and RedHat should build fine from HEAD starting now |
I tried to get bazel running on Suse SLES 11.3.
I did the following steps (roughly):
zypper addrepo http://download.opensuse.org/repositories/Archiving/SLE_11_SP3/Archiving.repo
zypper refresh
zypper install libarchive
zypper install libarchive-devel
zypper addrepo http://download.opensuse.org/repositories/Java:Factory/SLE_11_SP3/Java:Factory.repo
zypper refresh
zypper install java-1_8_0-openjdk
zypper install java-1_8_0-openjdk-devel
export JAVA_HOME=/usr/lib64/jvm/java-1.8.0-openjdk-1.8.0/
./compile.sh
fails
~/bazel>./compile.sh
Compiling Java stubs for protocol buffers...
third_party/protobuf/protoc.amd64: /lib64/libc.so.6: version
GLIBC_2.15' not found (required by third_party/protobuf/protoc.amd64) third_party/protobuf/protoc.amd64: /lib64/libc.so.6: version
GLIBC_2.14' not found (required by third_party/protobuf/protoc.amd64)SLES 11.3 comes with glibc 2.11 ( I updated it)
~/bazel>zypper info glibc
Loading repository data...
Reading installed packages...
Information for package glibc:
Repository: sp3-updates
Name: glibc
Version: 2.11.3-17.82.11
Arch: x86_64
Vendor: SUSE LINUX Products GmbH, Nuernberg, Germany
Support Level: Level 3
Installed: Yes
Status: up-to-date
Installed Size: 5.3 MiB
Summary: Standard Shared Libraries (from the GNU C Library)
Description:
The GNU C Library provides the most important standard libraries used
by nearly all programs: the standard C library, the standard math
library, and the POSIX thread library. A system is not functional
without these libraries.
I doubt glibc can be updated, so it would be good if bazel could work with this version of glibc.
The text was updated successfully, but these errors were encountered: