Skip to content

Latest commit

 

History

History
53 lines (46 loc) · 1.68 KB

build.md

File metadata and controls

53 lines (46 loc) · 1.68 KB

Build uplink from source

  1. Get source code from github:
git clone https://github.com/bytebeamio/uplink.git
  1. Build uplink your system's architecture, the binary should be in target/release/
cargo build --release

For ARM systems

In case you want to run uplink on an ARM system, follow instruction given below to create an ARM compatible binary.

  1. Install cross, a Zero setup cross compilation crate.
cargo install cross
  1. Build binary for the target architecture, e.g: armv7-unknown-linux-gnueabihf.
cross build --release --target armv7-unknown-linux-gnueabihf
  1. Retreive executable from /target/armv7-unknown-linux-gnueabihf/release/uplink and execute it on target device.

For Android systems

For an android target, the following instructions should help you build and install a compatible binary.

  1. Install cargo-ndk v2.11.0
cargo install cargo-ndk --version 2.11.0
  1. Ensure ANDROID_NDK_HOME env variable is set to point to the android NDK directory.
export ANDROID_NDK_HOME=~/Android/Sdk/ndk/25.0.8775105
  1. Run the cargo-ndk tool to build uplink for the specific version of android
cargo ndk --target x86_64-linux-android --platform 23 build --bin uplink
  1. Move executables to /data/local/ on target device
  2. Set the application's uplink port appropriately in the config.toml file
  3. Include the following line in config.toml
persistence_path = "/data/local/uplink"
  1. Ensure the uplink binary is executable and start it in the background
chmod +x uplink_exe

See releases for pre-compiled binaries to select platforms/architectures.