From 89ed5cfd9eb28997903866b21a336a90241466f6 Mon Sep 17 00:00:00 2001 From: Martin Valgur Date: Sat, 28 Sep 2024 23:13:20 +0300 Subject: [PATCH] Another attempt at fixing the RPATH issue in CI --- .github/workflows/build.yml | 5 ++++- CMakeLists.txt | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8d429ce2a..34e5d984d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -65,7 +65,10 @@ jobs: run: cmake --build out/build --parallel --config ${{ env.BUILD_TYPE }} - name: Inspect build outputs - run: ls -lh out/build/bin/* + if: env.OPERATING_SYSTEM == 'linux' + run: | + ls -lh out/build/bin/* + for f in *; do echo $f; objdump -p $f | grep -P 'RUNPATH|RPATH'; done - name: Unit Tests run: ctest --test-dir out/build --build-config ${{ env.BUILD_TYPE }} --output-on-failure diff --git a/CMakeLists.txt b/CMakeLists.txt index fa77a0d97..3a40aab75 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -86,7 +86,8 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${BUILD_TYPE} "${OUTPUT_DIR}") set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${BUILD_TYPE} "${OUTPUT_DIR}") # Look for shared libs in the same directory as the executable when running tests -set(CMAKE_BUILD_RPATH "\$ORIGIN") +set(CMAKE_INSTALL_RPATH "\$ORIGIN") +set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) # Find Git package, if not need to install manually or through .yml file find_package(Git)