-
Notifications
You must be signed in to change notification settings - Fork 104
Fix develspace build and launch in --link-devel builds (catkin tools) #771
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
Conversation
Build finished. 21 tests run, 0 skipped, 1 failed. |
Hmm, test |
That's why I removed it in my PR. It seemed very strange to be there, but if it's helping your application, I don't think there is any harm in keeping it there. |
I love the ability to run the simulation from the For a current work-around without this PR, you will be able to successfully build using a |
Signed-off-by: Michael Carroll <michael@openrobotics.org>
Signed-off-by: Michael Carroll <michael@openrobotics.org>
@peci1 I just built on top of your PR to fix the unit test as well as clean up the differences in Edit: This works for me with |
Build finished. No test results found. |
Build finished. 21 tests run, 0 skipped, 0 failed. |
Build finished. 21 tests run, 0 skipped, 0 failed. |
Build finished. 21 tests run, 0 skipped, 0 failed. |
Thanks for the updates to this PR, @mjcarroll . I found ign_migration_scripts was also spoiling the env hooks. It's actually hard to believe the subt workspace has worked so reliably until now, because the contents of So I took env hooks from both ign_migration_scripts and subt_ign and renamed them according to the catkin docs suggestion with a numbered prefix. Originally, I wanted to give subt_ign lower priority than ign_migration_scripts, but as The env-file renaming will probably not help people using devel space until they clean it (or manually delete I also tried to approach the hardcoded worlds path. I resorted to using rospack, as nobody gave me any better idea in https://answers.ros.org/question/370672/catkin-how-to-configure_file-differently-in-develspace-and-installspace/ (asked 12 days ago). With these two more commits I was able to build subt workspace both with devel space and with install space (with non-shared build dir). subt_ign tests ran ok in both cases. |
PR #752 broke building the repo in develspace using
catkin build --link-devel
. Before it was ok, it just wasn't possible to launch the simulator from the develspace (because the env-hooks were only taking care about installspace). We used this setup to build commsclient and similar environment-agnostic stuff in our solution images (because our packages are not correctly installable).The build failure is caused by gcc not finding the generated protobuf
.h
files which are put indevel/.private/subt_ign/include
.This PR fixes the develspace build, and moreover, it also adds support for develspace in the env-hooks, so that it is now completely possible to run the simulation from devel space (I tested it on a more or less cleanly installed computer).
I'm not really sure about the
${CATKIN_DEVEL_PREFIX}/include
item incatkin_package(INCLUDE_DIRS)
. It would be weird to add it there also in install builds. But I haven't found a way to distinguish develspace/installspace builds from within the main CMakeLists.txt... And string parsing ofCMAKE_PREFIX_PATH
is something I'd really like to avoid.