haileys / bark

live sync audio streaming for local networks
GNU Affero General Public License v3.0
663 stars 11 forks source link

Build instructions #2

Open AstraLuma opened 10 months ago

AstraLuma commented 10 months ago

Just some quick notes on build instructions.

I'm doing this on Fedora, so I'm just writing down those instructions

  1. Needs speexdsp (rpm: speexdsp-devel, apt: libspeexdsp-dev), alsa
  2. cargo build

cross-compiling (eg raspberry pi) fedora:

  1. Cross-compiling system stuff (rpm: binutils-arm-linux-gnu, gcc-arm-linux-gnu / binutils-aarch64-linux-gnu, gcc-aarch64-linux-gnu)
  2. Get appropriate rust bits (rustup target add arm-unknown-linux-gnueabihf / rustup target add aarch64-unknown-linux-gnu / etc)
  3. libraries???
  4. PKG_CONFIG_SYSROOT_DIR=/usr/aarch64-linux-gnu cargo build --target aarch64-unknown-linux-gnu / PKG_CONFIG_SYSROOT_DIR=/usr/arm-none-eabi cargo build --target arm-unknown-linux-gnueabihf

actually, i never figured out how to fix the linking errors on fedora (i think it's trying to link in the x86 libraries into the arm binaries), so I'm just going to compile on the Pis.

AstraLuma commented 10 months ago

rpi build script:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
. "$HOME/.cargo/env"
sudo apt update
sudo apt install -y git libspeexdsp-dev libasound2-dev pulseaudio-utils pulseaudio
git clone https://github.com/haileys/bark.git
cd bark
cargo build --release
mkdir ~/.config
cp bark.toml ~/.config/
sixtyfive commented 3 months ago

Might be a nice PR against the README?