You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
First of all, I'm very new to bazel, so please forgive any incorrect wording and stupid questions 😅
I'm trying to switch to bazel with a bunch of native dependencies, most of which get built using autotools, which we're wrapping from bazel using foreign_cc
Our main issue comes down to libtool not detecting ld.lld as a GNU linker, but I believe that's because the linker is simply not there.
Here's a minimal repro: minimal_repro.zip
Libtool gets confused by what the linker is and fails to generate the .so, which causes the main visible error:
$> bazel build :libxcrypt --sandbox_debug
...
/usr/bin/install: cannot stat '.libs/libcrypt.so.2.0.0': No such file or directory
make[1]: *** [Makefile:1418: install-libLTLIBRARIES] Error 1
make[1]: Leaving directory '/home/hugo.beauzee/.cache/bazel/_bazel_hugo.beauzee/d935f933fb7b3a399ddc63c1fd0c0e1d/sandbox/processwrapper-sandbox/4/execroot/_main/bazel-out/k8-fastbuild/bin/libxcrypt.build_tmpdir'
make: *** [Makefile:3246: install-am] Error 2
_____ END BUILD LOGS _____
Looking at bazel-out/k8-fastbuild/bin/libxcrypt_foreign_cc/Configure.log we can see the compiler and linker being provided to xcrypt's build system:
$> /home/hugo.beauzee/.cache/bazel/_bazel_hugo.beauzee/d935f933fb7b3a399ddc63c1fd0c0e1d/sandbox/processwrapper-sandbox/5/execroot/_main/external/hermetic_cc_toolchain~~toolchains~zig_sdk/tools/x86_64-linux-gnu.2.28/c++ -v
clang version 17.0.6 (https://github.com/ziglang/zig-bootstrap 4c78aa1bba84dbd324e178932cd52221417f63da)
Target: x86_64-unknown-linux-gnu.2.28
The linker doesn't appear to be:
$> /home/hugo.beauzee/.cache/bazel/_bazel_hugo.beauzee/d935f933fb7b3a399ddc63c1fd0c0e1d/sandbox/processwrapper-sandbox/5/execroot/_main/external/hermetic_cc_toolchain~~toolchains~zig_sdk/tools/ld.lld -v
zsh: no such file or directory: /home/hugo.beauzee/.cache/bazel/_bazel_hugo.beauzee/d935f933fb7b3a399ddc63c1fd0c0e1d/sandbox/processwrapper-sandbox/5/execroot/_main/external/hermetic_cc_toolchain~~toolchains~zig_sdk/tools/ld.lld
while I'd expect it to be, since the build is ran with --sandbox_debug
It's also worth noting that when running with --spawn_strategy=local, the issue doesn't reproduce
Thanks a lot in advance for taking a look!
The text was updated successfully, but these errors were encountered:
chouquette
changed the title
ld.lld seems unavailable when linking with libtool
ld.lld seems unavailable when linking with libtool & using an hermetic toolchain
Oct 25, 2024
Hello 👋
First of all, I'm very new to bazel, so please forgive any incorrect wording and stupid questions 😅
I'm trying to switch to bazel with a bunch of native dependencies, most of which get built using autotools, which we're wrapping from bazel using
foreign_cc
Our main issue comes down to libtool not detecting
ld.lld
as a GNU linker, but I believe that's because the linker is simply not there.Here's a minimal repro:
minimal_repro.zip
Libtool gets confused by what the linker is and fails to generate the .so, which causes the main visible error:
Looking at
bazel-out/k8-fastbuild/bin/libxcrypt_foreign_cc/Configure.log
we can see the compiler and linker being provided to xcrypt's build system:While C compiler is there:
The linker doesn't appear to be:
while I'd expect it to be, since the build is ran with
--sandbox_debug
It's also worth noting that when running with
--spawn_strategy=local
, the issue doesn't reproduceThanks a lot in advance for taking a look!
The text was updated successfully, but these errors were encountered: