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

unable to compile on OSX #175

Closed
Karsten1987 opened this issue Jul 6, 2020 · 9 comments · Fixed by #176 or #191
Closed

unable to compile on OSX #175

Karsten1987 opened this issue Jul 6, 2020 · 9 comments · Fixed by #176 or #191
Assignees

Comments

@Karsten1987
Copy link
Contributor

Required information

Operating system:
Mojave

Compiler version:
clang-1001.0.46.4

Observed result or behaviour:

Starting >>> iceperf
--- stderr: iceoryx_introspection
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
LIB_TINFO
    linked by target "iceoryx_introspection" in directory /Users/karsten/workspace/ros2/iceoryx_ws/osx/src/iceoryx/tools/introspection

---

Expected result or behaviour:
clean compilation

Conditions where it occurred / Performed steps:
colcon build in a workspace with iceoryx and rmw_iceoryx.

@elfenpiff
Copy link
Contributor

@Karsten1987 at the moment we do not support colcon on mac. But it is on our radar as next step! Therefore, we need to add a GitHub CI colcon target. I think @prasannabhat is currently working on it whenever he finds the time and then we clean up the CMake files.

@prasannabhat
Copy link
Contributor

@Karsten1987 You might need to build & install ncurses (LIB_TINFO is part of this) manually.
I dont know if there in an easy way to install ncurses in mac.

@elfenpiff gave me the hint to build it by sources.
I am building it in github CI mac workflow
Refer workflow step Build ncurses by source

May be this helps

@elBoberido
Copy link
Member

@Karsten1987, how do you build it? iceoryx_utils and iceoryx_posh should not depend on ncurses. Can you check if it builds if you place a COLCON_IGNORE file into tools/introspection?

@Karsten1987
Copy link
Contributor Author

I've mentioned this on the OSX PR here that I think the right solution is to explicitly exclude the introspection package on OSX. Placing a COLCON_IGNORE becomes really cumbersome when trying to run in batch mode or CI.

@elfenpiff
Copy link
Contributor

@Karsten1987 if you only need a COLCON_IGNORE file then colcon should build after merging this pull request where I just added the file: #176

@Karsten1987
Copy link
Contributor Author

If you add a COLCON_IGNORE it won't build on any platform - Linux included. That's not what we want. This would disable the introspection package whenever you build within a ROS2 context.

@Karsten1987
Copy link
Contributor Author

I think this issue should be re-opened as #176 did not address the issue.

@elBoberido elBoberido reopened this Jul 13, 2020
@elBoberido
Copy link
Member

@Karsten1987, is there a possibility to control colcon apart from a COLCON_IGNORE, e.g. a .colcon file with meta data?

Another possibility would be to not have the introspection client required and only build it if ncurses is found.

@Karsten1987
Copy link
Contributor Author

colcon has quite a few ways of configuration: https://colcon.readthedocs.io/en/released/user/configuration.html

However, from what I understood, the introspection package is simply not supported on OSX, is that right? If so, I still think the right approach here is to simply avoid compiling this package via cmake as mentioned here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants