Bug #1237
Linking fails with undefined symbols due to overwritten CMake variable
Status: | Resolved | Start date: | 11/15/2012 | |
---|---|---|---|---|
Priority: | High | Due date: | ||
Assignee: | - | % Done: | 100% | |
Category: | Build System | |||
Target version: | Robotics Service Bus - rsb-0.9 |
Description
The problem is that a downstream component requires RST with the sandbox component enabled while an upstream component requires only the regular RST component. That way, the RST_LIBRARIES variable ends up without the rstsandbox library entry.
This happenend to me using CCA and RST Converters. I could hack around this by changing the CCAConfig.cmake file as follows:
# RST FIND_PACKAGE(RST REQUIRED COMPONENTS sandbox) LIST(APPEND CCA_INCLUDE_DIRS ${RST_INCLUDE_DIRS}) LIST(APPEND CCA_LIBRARIES ${RST_LIBRARIES})
This is of course no correct solution.
It can probably be reproduced by just calling FIND_PACKAGE two times in a single file:
FIND_PACKAGE(RST REQUIRED COMPONENTS sandbox) FIND_PACKAGE(RST REQUIRED)
History
#1 Updated by J. Moringen almost 11 years ago
- Status changed from New to Resolved
- % Done changed from 0 to 100
I think, we solved this in Robotics Systems Types.
@Sebastian: please reopen, if you can still reproduce this.