Crates.io | rust_sodium_holochain_fork |
lib.rs | rust_sodium_holochain_fork |
version | 0.10.2 |
source | src |
created_at | 2020-01-18 20:55:59.729251 |
updated_at | 2020-01-18 20:55:59.729251 |
description | Fast cryptographic library for Rust (bindings to libsodium) |
homepage | https://maidsafe.net |
repository | https://github.com/maidsafe/rust_sodium |
max_upload_size | |
id | 199849 |
size | 4,832,946 |
Rust bindings to libsodium.
This project is largely based on sodiumoxide. Some main differences are:
Crate | Documentation | Linux/macOS | Windows | Issues |
---|---|---|---|---|
MaidSafe website | SAFE Dev Forum | SAFE Network Forum |
---|
Certain situations may require building libsodium configured with --disable-pie
. To enable this,
set an environment variable RUST_SODIUM_DISABLE_PIE
while building, e.g.
RUST_SODIUM_DISABLE_PIE=1 cargo build
If you already have a copy of libsodium, you can choose to link this rather than having rust_sodium
download and build libsodium for you. You should ensure that it is the same version as is specified
in VERSION
of
our build.rs file.
Set an environment variable RUST_SODIUM_LIB_DIR
to the folder where libsodium exists. A static
version of libsodium will be preferred unless you also set RUST_SODIUM_SHARED
to any value.
Alternatively, you can use pkgconfig if appropriate to locate libsodium by setting
RUST_SODIUM_USE_PKG_CONFIG
to any value. In this case, RUST_SODIUM_SHARED
has no effect, and
generally a shared version of libsodium will be used.
Install dependencies and toolchain:
sudo apt update
sudo apt install build-essential gcc-arm-linux-gnueabihf libc6-armhf-cross libc6-dev-armhf-cross -y
rustup target add armv7-unknown-linux-gnueabihf
Add the following to a .cargo/config file:
[target.armv7-unknown-linux-gnueabihf]
linker = "arm-linux-gnueabihf-gcc"
Build by running:
cargo build --release --target armv7-unknown-linux-gnueabihf
Install dependencies and toolchain:
sudo apt update
sudo apt install build-essential gcc-multilib -y
rustup target add i686-unknown-linux-gnu
Build by running:
cargo build --release --target i686-unknown-linux-gnu
This SAFE Network library is dual-licensed under the Modified BSD (LICENSE-BSD https://opensource.org/licenses/BSD-3-Clause) or the MIT license (LICENSE-MIT https://opensource.org/licenses/MIT) at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.