eclipse-iceoryx / iceoryx

Eclipse iceoryx™ - true zero-copy inter-process-communication
https://iceoryx.io
Apache License 2.0
1.57k stars 373 forks source link

DDS Gateway failing to build in MacOS workflow #193

Closed orecham closed 3 years ago

orecham commented 3 years ago

Required information

Operating system: MacOS 10.15

Compiler version: GCC 8

Observed result or behaviour: DDS Gateway build fails due to inability to find boost dependency. Error message:

In file included from /Users/runner/work/iceoryx/iceoryx/build/iceoryx_dds_messages/Mempool.h:4:
In file included from /Users/runner/work/iceoryx/iceoryx/build/dependencies/install/include/ddscxx/dds/core/ddscore.hpp:22:
In file included from /Users/runner/work/iceoryx/iceoryx/build/dependencies/install/include/ddscxx/dds/core/types.hpp:28:
In file included from /Users/runner/work/iceoryx/iceoryx/build/dependencies/install/include/ddscxx/dds/core/macros.hpp:22:
/Users/runner/work/iceoryx/iceoryx/build/dependencies/install/include/ddscxx/dds/core/detail/macros.hpp:88:14: fatal error: 'boost/static_assert.hpp' file not found
#    include <boost/static_assert.hpp>
             ^~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make[2]: *** [CMakeFiles/iceoryx_dds_messages.dir/Mempool.cpp.o] Error 1
make[1]: *** [CMakeFiles/iceoryx_dds_messages.dir/all] Error 2
make: *** [all] Error 2

Expected result or behaviour: Boost dependency to be found and DDS Gateway to be successfully built.

Conditions where it occurred / Performed steps: Run the github workflow for MacOS with the with-dds-gateway option.

Attempts to fix

  1. Attempted to install boost via Homebrew, however dependency is still not found and the build fails with the same error.
  2. Attempted to build boost from source and manually install, dependency is still not found and the build fails with the same error. Here are the workflow steps used for building from source (including caching):

      - name: Load boost from cache
        id:   cache-boost
        uses: actions/cache@v2
        with:
          path: $GITHUB_WORKSPACE/build/dependencies/boost/install/
          key: ${{ runner.os }}-boost
    
      - name: Build boost from source
        if: steps.cache-boost.outputs.cache-hit != 'true'
        run: |
          cd $GITHUB_WORKSPACE
          mkdir -p build
          cd build
          wget https://dl.bintray.com/boostorg/release/1.73.0/source/boost_1_73_0.tar.gz
          tar xf ./boost_1_73_0.tar.gz
          cd ./boost_1_73_0
          ./bootstrap.sh --prefix=$GITHUB_WORKSPACE/build/dependencies/boost/install/
          ./b2
          ./b2 install
    
      - name: Copy boost to prefix path
        run: |
          mkdir -p $GITHUB_WORKSPACE/build/dependencies/install/
          cp $GITHUB_WORKSPACE/build/dependencies/boost/install/* $GITHUB_WORKSPACE/build/dependencies/install/
          ls $GITHUB_WORKSPACE/build/dependencies/install/
dkroenke commented 3 years ago

@ithier does this Problem still persist?

orecham commented 3 years ago

Fixed by #191