package/rust: use host libraries from HOST_DIR
host-rust package depends on several host packages to provide tools and libraries but it doesn't take into account out host libraries in HOST_DIR while building rustc compiler. Indeed, rustc needs zlib and fails to link if zlib is not installed on the host. error: could not compile `rustc_driver` (lib) due to previous error If zlib is installed on the host, we can notice it with ldd tool (while it should be linked with the one provided by Buildroot host-zlib): ldd [...]TestRust/host/bin/rustc libz.so.1 => /lib64/libz.so.1 Provide HOST_LDFLAGS using llvm.ldflags in config.toml. (HOST_LDFLAGS provides -L$(HOST_DIR)/lib -Wl,-rpath,$(HOST_DIR)/lib) With that fixed, rustc_driver link with libz from HOST_DIR but the host-rust build still fail later due to another issue. error: could not compile `rustdoc-tool` (bin "rustdoc_tool_binary") due to previous error Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/6256881545 http://autobuild.buildroot.org/results/a6b/a6b28783f29e6b729824bf42679a62f72ad5bee0 Signed-off-by: Romain Naour <romain.naour@smile.fr> [yann.morin.1998@free.fr: slight rewording in commit log] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
parent
953230e176
commit
83a4c6f4fb
@ -65,6 +65,7 @@ define HOST_RUST_CONFIGURE_CMDS
|
||||
echo 'cc = "$(TARGET_CROSS)gcc"'; \
|
||||
echo '[llvm]'; \
|
||||
echo 'ninja = false'; \
|
||||
echo 'ldflags = "$(HOST_LDFLAGS)"'; \
|
||||
) > $(@D)/config.toml
|
||||
endef
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user