When building libc crate with musl, don't look for libc.a
musl may not be available on the target user's machine, and even if it is, we may not be able to find it because of how static libraries are searched for. Instead, use the transitively included liblibc which includes libc.a.
This commit is contained in:
parent
5ef250427d
commit
52862e4cda
1 changed files with 4 additions and 1 deletions
|
@ -146,7 +146,10 @@ pub use funcs::bsd43::*;
|
|||
#[link(name = "m")]
|
||||
extern {}
|
||||
|
||||
#[cfg(all(target_env = "musl", not(test)))]
|
||||
// When compiling rust with musl, statically include libc.a in liblibc.rlib.
|
||||
// A cargo build of the libc crate will therefore automatically pick up the
|
||||
// libc.a symbols because liblibc is transitively linked to by the stdlib.
|
||||
#[cfg(all(target_env = "musl", not(feature = "cargo-build"), not(test)))]
|
||||
#[link(name = "c", kind = "static")]
|
||||
extern {}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue