tensorflow / tensorflow/tensorboard
1.12.0 build fails because it uses wrong libstdc++.so.6
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 7.2k
- Forks
- 1.7k
- Avg merge
- 4d 22h
- Merged PRs (30d)
- 1
Description
I'm trying to build tensorboard 0.12.0 on a centos7 machine, using my own copies of GCC 6.3.0, python 3.6.0 and bazel 0.19.1.
The build seems to be failing where it correctly detects that /lib64/libstdc++.so.6 is too old, when it should be checking the version of that library embeded in my GCC install.
I'm seeing this:
$ export TEST_TMPDIR=`mktemp -d`
$ bazel build //tensorboard/pip_package:build_pip_package
$TEST_TMPDIR defined: output root default is '/local/736080.1.24core-128G-2K80.q/tmp.nu1gxzcIT3' and max_idle_secs default is '15'.
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
INFO: Analysed target //tensorboard/pip_package:build_pip_package (288 packages loaded, 5205 targets configured).
INFO: Found 1 target...
INFO: From SkylarkAction external/bazel_tools/tools/jdk/platformclasspath.jar [for host]:
warning: could not find a JDK 8 bootclasspath in external/embedded_jdk, falling back to --release
INFO: From ProtoCompile tensorboard/plugins/scalar/plugin_data_pb2.py:
external/com_google_protobuf/python: warning: directory does not exist.
INFO: From ProtoCompile tensorboard/plugins/custom_scalar/layout_pb2.py:
external/com_google_protobuf/python: warning: directory does not exist.
INFO: From ProtoCompile tensorboard/plugins/pr_curve/plugin_data_pb2.py:
external/com_google_protobuf/python: warning: directory does not exist.
INFO: From ProtoCompile tensorboard/plugins/audio/plugin_data_pb2.py:
external/com_google_protobuf/python: warning: directory does not exist.
INFO: From ProtoCompile tensorboard/plugins/projector/projector_config_pb2.py:
external/com_google_protobuf/python: warning: directory does not exist.
ERROR: /local/736080.1.24core-128G-2K80.q/tmp.nu1gxzcIT3/_bazel_issmcd/0bbf1e373d35136448169e269dfc1acd/external/org_tensorflow/tensorflow/core/BUILD:262:1: Generating JavaScript Protocol Buffer example_protos failed (Exit 1) protoc failed: error executing command bazel-out/host/bin/external/com_google_protobuf/protoc -Iexternal/org_tensorflow ... (remaining 3 argument(s) skipped)
Use --sandbox_debug to see verbose messages from the sandbox
bazel-out/host/bin/external/com_google_protobuf/protoc: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by bazel-out/host/bin/external/com_google_protobuf/protoc)
bazel-out/host/bin/external/com_google_protobuf/protoc: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by bazel-out/host/bin/external/com_google_protobuf/protoc)
bazel-out/host/bin/external/com_google_protobuf/protoc: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by bazel-out/host/bin/external/com_google_protobuf/protoc)
Target //tensorboard/pip_package:build_pip_package failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 67.884s, Critical Path: 17.58s, Remote (0.00% of the time): [queue: 0.00%, setup: 0.00%, process: 0.00%]
INFO: 236 processes: 234 processwrapper-sandbox, 2 worker.
FAILED: Build did NOT complete successfully
$ ldd bazel-out/host/bin/external/com_google_protobuf/protoc
linux-vdso.so.1 => (0x00007ffde9f1c000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b913b3e9000)
libm.so.6 => /lib64/libm.so.6 (0x00002b913b606000)
libstdc++.so.6 => /apps/developers/compilers/gnu/6.3.0/1/default/lib64/libstdc++.so.6 (0x00002b913b908000)
libgcc_s.so.1 => /apps/developers/compilers/gnu/6.3.0/1/default/lib64/libgcc_s.so.1 (0x00002b913bc89000)
libc.so.6 => /lib64/libc.so.6 (0x00002b913bea1000)
/lib64/ld-linux-x86-64.so.2 (0x000055cecc5aa000)
Any ideas of how to get it to check the right copy of libstdc++.so.6, please?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the failure with the Bazel target //tensorboard/pip_package:build_pip_package on CentOS 7 using the reported GCC installation. Start by inspecting how the external/com_google_protobuf/protoc action selects its runtime libraries; done means the target builds without resolving libstdc++.so.6 from the system copy.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- centos, cpp, python
- Domain
- build-system, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100