From 76fc634bd7dfe94701e3621c0db86c0613afb408 Mon Sep 17 00:00:00 2001 From: Blitblank Date: Sun, 1 Feb 2026 18:55:52 -0600 Subject: [PATCH] linux build additions --- CMakeLists.txt | 13 +++++++---- scripts/build.sh | 3 ++- scripts/install_dependencies.sh | 39 +++++++++++++++++++++++++++++++++ 3 files changed, 50 insertions(+), 5 deletions(-) mode change 100644 => 100755 scripts/install_dependencies.sh diff --git a/CMakeLists.txt b/CMakeLists.txt index a4ed177..f2478e0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -31,10 +31,15 @@ if (WIN32) # windows 11 x86_64 ) else() # debian 12 x86_64 - find_package(PkgConfig REQUIRED) - pkg_check_modules(RTAUDIO REQUIRED rtaudio) - pkg_check_modules(RTMIDI REQUIRED rtmidi) - pkg_check_modules(YAMLCPP REQUIRED yaml-cpp) + #find_package(PkgConfig REQUIRED) + #pkg_check_modules(RTAUDIO REQUIRED rtaudio) + #pkg_check_modules(RTMIDI REQUIRED rtmidi) + #pkg_check_modules(YAMLCPP REQUIRED yaml-cpp) + + find_package(rtaudio) + find_package(rtmidi) + find_package(yaml-cpp) + endif() qt_standard_project_setup() diff --git a/scripts/build.sh b/scripts/build.sh index ef5744a..f9cb0f1 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -1,3 +1,4 @@ -cmake -S . -B build -G Ninja +cmake -S . -B build -G Ninja \ + -DCMAKE_PREFIX_PATH=build/lib cmake --build build diff --git a/scripts/install_dependencies.sh b/scripts/install_dependencies.sh old mode 100644 new mode 100755 index e69de29..c4dd991 --- a/scripts/install_dependencies.sh +++ b/scripts/install_dependencies.sh @@ -0,0 +1,39 @@ + +echo "Installing dependencies ... " + +# TODO: add a clean (like delete build dirs) script + +PROJECT_ROOT=$PWD + +mkdir ${PWD}/build/lib -p + +BUILD_LIB_DIR=${PWD}/build/lib + +# rtaudio +mkdir ${BUILD_LIB_DIR}/rtaudio -p +cd ${PROJECT_ROOT}/lib/rtaudio +cmake -S . -B build -G Ninja \ + -DRTAUDIO_BUILD_SHARED_LIBS=ON \ + -DCMAKE_BUILD_TYPE=Release +cmake --build build +cmake --install build --prefix ${BUILD_LIB_DIR}/rtaudio + +# rtmidi +mkdir ${BUILD_LIB_DIR}/rtmidi -p +cd ${PROJECT_ROOT}/lib/rtmidi +cmake -S . -B build -G Ninja \ + -DRTMIDI_BUILD_SHARED_LIBS=ON \ + -DCMAKE_BUILD_TYPE=Release +cmake --build build +cmake --install build --prefix ${BUILD_LIB_DIR}/rtmidi + +# yaml-cpp +mkdir ${BUILD_LIB_DIR}/yaml-cpp -p +cd ${PROJECT_ROOT}/lib/yaml-cpp +cmake -S . -B build -G Ninja \ + -DYAML_BUILD_SHARED_LIBS=ON \ + -DCMAKE_BUILD_TYPE=Release +cmake --build build +cmake --install build --prefix ${BUILD_LIB_DIR}/yaml-cpp + +cd ${PROJECT_ROOT}