From d387919e99504318b52e25bca70825fbb76b448f Mon Sep 17 00:00:00 2001 From: Josh Triplett Date: Thu, 19 Nov 2020 13:27:04 -0800 Subject: [PATCH] Update notes about static linking and MUSL People often use the edition guide as general documentation of capabilities, not just for Rust 2018. There is extensive information on the web suggesting that Rust *only* supports static linking with MUSL. Add a note documenting current capabilities, so that people know they have a choice of libc implementations even if they need static linking. --- src/SUMMARY.md | 1 + .../musl-support-for-fully-static-binaries.md | 3 +++ 2 files changed, 4 insertions(+) diff --git a/src/SUMMARY.md b/src/SUMMARY.md index b9913830..9aa5aa07 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -84,6 +84,7 @@ - [Global allocators](rust-2018/platform-and-target-support/global-allocators.md) - [MSVC toolchain support](rust-2018/platform-and-target-support/msvc-toolchain-support.md) - [MUSL support for fully static binaries](rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.md) + - Note: current Rust (as of 1.48) supports static binaries with either glibc or MUSL, so you can select whichever libc you need or prefer. - [`cdylib` crates for C interoperability](rust-2018/platform-and-target-support/cdylib-crates-for-c-interoperability.md) ## The Next Edition diff --git a/src/rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.md b/src/rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.md index 65381e36..7ef0566b 100644 --- a/src/rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.md +++ b/src/rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.md @@ -2,6 +2,9 @@ ![Minimum Rust version: 1.1](https://img.shields.io/badge/Minimum%20Rust%20Version-1.1-brightgreen.svg) +(Note: current Rust (as of 1.48) supports static linking with either glibc or +MUSL, so you can select whichever libc you need or prefer.) + By default, Rust will statically link all Rust code. However, if you use the standard library, it will dynamically link to the system's `libc` implementation.