Skip to content

Latest commit

 

History

History
155 lines (110 loc) · 2.63 KB

File metadata and controls

155 lines (110 loc) · 2.63 KB

phiola Build Instructions

  • Step 1. Download code
  • Step 2, Option 1. Cross-Build on Linux
  • Step 2, Option 2. Native Build
    • Install dependencies
    • Build
  • Build Parameters
  • Use

Supported targets:

  • Cross-Build on Linux for AMD64 & ARM64, Windows/AMD64, Android/ARM64
  • Native build on Linux

Targets that should work after minor tweaking:

  • Build on Windows
  • Build on FreeBSD & macOS

Step 1. Download code

mkdir phiola-src
cd phiola-src
git clone https://github.com/stsaz/phiola
git clone https://github.com/stsaz/netmill
git clone https://github.com/stsaz/avpack
git clone https://github.com/stsaz/ffaudio
git clone https://github.com/stsaz/ffpack
git clone https://github.com/stsaz/ffgui
git clone https://github.com/stsaz/ffsys
git clone https://github.com/stsaz/ffbase
cd phiola

Step 2, Option 1. Cross-Build on Linux

  • Cross-Build on Linux:

     bash xbuild.sh
  • Cross-Build on Linux for ARM64:

     CPU=arm64 \
     	bash xbuild.sh
  • Cross-Build on Linux for Windows/AMD64:

     OS=windows \
     	bash xbuild.sh
  • Cross-Build on Linux for Android/ARM64:

     ANDROID_CLT_URL=https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip \
     ANDROID_HOME=/home/USER/Android \
     ANDROID_BT_VER=33.0.0 \
     ANDROID_PF_VER=33 \
     ANDROID_NDK_VER=25.1.8937393 \
     GRADLE_DIR=/home/USER/.gradle \
     CPU=arm64 \
     	bash xbuild-android.sh

Step 2, Option 2. Native Build

Install dependencies

  • Debian/Ubuntu

     sudo apt install \
     	make gcc g++ \
     	libasound2-dev libpulse-dev libjack-dev \
     	libdbus-1-dev \
     	libgtk-3-dev \
     	zstd unzip cmake patch dos2unix curl
  • Fedora

     sudo dnf install \
     	make gcc gcc-c++ \
     	alsa-lib-devel pulseaudio-libs-devel pipewire-jack-audio-connection-kit-devel \
     	dbus-devel \
     	gtk3-devel \
     	zstd unzip cmake patch dos2unix curl
  • Windows

    • msys2 packages: mingw-w64-clang-x86_64-clang

    Environment:

     set PATH=c:\clang64\bin;%PATH%
    
  • macOS

     brew install \
     	make llvm \
     	cmake dos2unix

Build

  • Build on Linux:

     make -j8
  • Build on Windows:

     mingw32-make -j8
  • Build on FreeBSD & macOS:

     gmake -j8 PHI_HTTP_SSL=0

Build Parameters

Parameter Description
DEBUG=1 Developer build (no optimization; no strip; all assertions)
ASAN=1 Enable ASAN
CFLAGS_USER=... Additional C/C++ compiler flags
PHI_CODECS=0 Disable all codecs
PHI_HTTP_SSL=0 Disable SSL
PHI_HTTP_SRV=0 Disable ICY server

Use

Directory phiola-2 is the application directory. Copy it anywhere you want.