make
- needed to build openssl via vendor featureperl
- needed to build openssl via vendor feature
gmake
- needed to build openssl via vender feature (pkg install gmake
)
A debug build is straightforward:
cargo build
A release build is also straightforward:
cargo build --release
If you want to install the binary locally from source:
# Where you are currently an the root of the project
cargo install --path .
To compile a completely static binary (not linked to libc), we need to target musl using:
rustup target add x86_64-unknown-linux-musl
cargo build --target x86_64-unknown-linux-musl
Note that on Mac OS X you will need to install musl-gcc:
brew install FiloSottile/musl-cross/musl-cross
And to do a strip (on Mac), use the musl strip:
x86_64-linux-musl-gcc target/x86_64-unknown-linux-musl/release/distant
At the moment, this is not possible to build on M1 Macs: FiloSottile/homebrew-musl-cross#23
From the root of the repository, run the below, replacing VERSION
with a
version like 0.16.4
:
docker build -t chipsenkbeil/distant:VERSION .