[Buildroot] [PATCH 1/2] package/rust: use host libraries from HOST_DIR

yann.morin at orange.com yann.morin at orange.com
Thu Feb 29 13:35:08 UTC 2024


romain, All,

On 2024-02-29 14:11 +0100, Romain Naour spake thusly:
> host-rust package depends on several host packages to provide tools and
> libraries but it doesn't take into account HOST_DIR while building rustc
> compiler. Indeed, rustc needs zlib and fail 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 provide -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 at smile.fr>
> ---
>  package/rust/rust.mk | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/package/rust/rust.mk b/package/rust/rust.mk
> index f7a5c0fcd5..c464e77f4f 100644
> --- a/package/rust/rust.mk
> +++ b/package/rust/rust.mk
> @@ -64,6 +64,7 @@ define HOST_RUST_CONFIGURE_CMDS
>  		echo 'cc = "$(TARGET_CROSS)gcc"'; \
>  		echo '[llvm]'; \
>  		echo 'ninja = false'; \
> +		echo 'ldflags = "$(HOST_LDFLAGS)"'; \

But then, we would also need to add host-zlib to
HOST_RUST_DEPENDENCIES, no?

Regards,
Yann E. MORIN.

>  	) > $(@D)/config.toml
>  endef
>  
> -- 
> 2.43.2
> 
> _______________________________________________
> buildroot mailing list
> buildroot at buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
                                        ____________
.-----------------.--------------------:       _    :------------------.
|  Yann E. MORIN  | Real-Time Embedded |    __/ )   | /"\ ASCII RIBBON |
|                 | Software  Designer |  _/ - /'   | \ / CAMPAIGN     |
| +33 638.411.245 '--------------------: (_    `--, |  X  AGAINST      |
| yann.morin (at) orange.com           |_="    ,--' | / \ HTML MAIL    |
'--------------------------------------:______/_____:------------------'

____________________________________________________________________________________________________________
Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.

This message and its attachments may contain confidential or privileged information that may be protected by law;
they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and delete this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
Thank you.


More information about the buildroot mailing list