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.
The autotools part is wrapped using rules_foreign_cc. In fairness, I'm not sure if the issue lies more in foreign_cc or here, but please feel free to redirect me there.
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
Thanks a lot in advance for taking a look!
The text was updated successfully, but these errors were encountered:
Oh I forgot to mention that running the build with --spawn_strategy=local makes the issue disappear, which makes me think about a problem with the linker's availability in the sandbox even more
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.
The autotools part is wrapped using rules_foreign_cc. In fairness, I'm not sure if the issue lies more in
foreign_cc
or here, but please feel free to redirect me there.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
Thanks a lot in advance for taking a look!
The text was updated successfully, but these errors were encountered: