Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setting RPATH for iceoryx artifacts #1287

Open
6 tasks
elBoberido opened this issue Mar 14, 2022 · 3 comments · Fixed by #1357 or #1385
Open
6 tasks

Setting RPATH for iceoryx artifacts #1287

elBoberido opened this issue Mar 14, 2022 · 3 comments · Fixed by #1357 or #1385
Labels
enhancement New feature good first issue Good for newcomers

Comments

@elBoberido
Copy link
Member

elBoberido commented Mar 14, 2022

Brief feature description

Setting the RPATH in cmake makes it easier to use iceoryx build as dynamic lib since the path to the lib will be stored in RouDi and the examples.

Detailed information

Building iceoryx as dynamic lib and using it is cumbersome since one has to add the installation path to the LD_LIBRARY_PATH/DYLD_LIBRARY_PATH. Setting the RPATH removes this additional step by embedding the path to the libraries inside the binaries.

Additional information:

Instead of setting the absolute path with ${CMAKE_INSTALL_PREFIX}/lib we should consider using relative paths like $ORIGIN/../${CMAKE_INSTALL_LIBDIR} or @loader_path/../${CMAKE_INSTALL_LIBDIR} on macOS. This has the advantage that the install directory can be copied and the binaries still find the correct libraries

Todo

  1. Refactor all CMakeLists.txt so that they use the iceoryx wrappers iox_add_library or iox_add_executable
  2. Set RPATH in the iceoryx wrappers correctly
  3. Remove compiler warning exceptions for tests in cmake (-Wno-pedantic -Wno-conversion)
  4. Adjust build destination for all iceoryx modules (destination should be equal to project name, see iceoryx_posh is build in build/posh.
  5. Set correct stack size for APPLE platform in iox_add_executable.
  6. Implement RPATH auto detection to solve posh dependencies in hoofs. See comment: iox-#1287 setting rpath for all iceoryx targets #1357 (comment)
@elBoberido elBoberido added good first issue Good for newcomers feature request Feature request under evaluation labels Mar 14, 2022
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 9, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 9, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 9, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 9, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 9, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 10, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 10, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 10, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
…e tasks

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
… and add missing LICENSE file to hoofs platform

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
…-tidy check is performed via tools/scripts/clang_tidy_check.sh

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
…NIQUE_INCLUDEDIR

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
…wrappers

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
…xecutable

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 11, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 12, 2022
…ld process compatible with our iceoryx_meta and colcon, and also correctly set for relocatable install

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 12, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 12, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 12, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 13, 2022
… binding_c

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 16, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 16, 2022
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
…xecutable_path required for apps

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
… example to new cmake api

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
…ld script

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
… fix Windows SDK compilation failure

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
…ed dependencies

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
…nted

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
…nted

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
…nted

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue May 31, 2022
…nted

Signed-off-by: Christian Eltzschig <me@elchris.org>
elfenpiff added a commit that referenced this issue May 31, 2022
…iceoryx-targets

iox-#1287 setting rpath for all iceoryx targets
@elBoberido
Copy link
Member Author

@elfenpiff is this really finished? There are some open tasks

@elBoberido
Copy link
Member Author

@elfenpiff It seems the PR for this issue broke the installation of the header. The iceoryx_posh header are installed in include and include/iceoryx/v2.90.0. The iceoryx_dds header are installed in include. Everything should be in include/iceoryx/v2.90.0.

Additionally the tests are also installed. This is different from before the changes. Not sure if they should also be installed.

@mossmaurice
Copy link
Contributor

Reopening due to the duplicate installation of ìceoryx_posh

@mossmaurice mossmaurice reopened this Jun 8, 2022
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Jun 8, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Jun 8, 2022
…y and not directly

Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Jun 8, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
gsquaredxc pushed a commit to gsquaredxc/iceoryx that referenced this issue Jun 8, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Jun 9, 2022
…package

Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Jun 9, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit that referenced this issue Jun 10, 2022
@elBoberido elBoberido linked a pull request Jun 10, 2022 that will close this issue
21 tasks
elfenpiff added a commit to ApexAI/iceoryx that referenced this issue Aug 22, 2022
Signed-off-by: Christian Eltzschig <me@elchris.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature good first issue Good for newcomers
Projects
None yet
2 participants