You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If a package has components with a dependency relationship (such as ign-physics-dartsim-plugin, which depends on ignition-physics-sdf and ignition-physics-mesh), then then all the components must be listed in the ign_find_package call and in a proper order. The following is a workaround for this issue in ign-gazebo:
I've demonstrated this issue with some examples committed to branch find_component_order_working and branch find_component_order. The find_component_order_working branch creates a package component_deps that has two components: parent and child, and the child component links against the parent. There is a second package called use_component_deps1 that makes an ign_find_package call for component_deps specifying both components parent child. This example builds fine:
hg up find_component_order_working
mkdir build && cd build && cmake ..
make (successful)
Now on branch branch find_component_order, another example named use_component_deps2 is added that differs from use_component_deps1 only in the order that components are specified in the ign_find_package call, but it fails to build:
hg up find_component_order
mkdir build && cd build && cmake ..
make (unsuccessful)
Expected behavior:
I would expect the examples to build regardless of the order in which components are specified. Furthermore, I would that specifying a component would cause dependent components to be included as well (as in the ign-physics example mentioned above).
Actual behavior:
ign_find_package is sensitive to the order of specified components when there is a dependent relationship, and dependent components must all be listed.
Reproduces how often:
100%
Versions
ign-cmake1 and ign-cmake2
Additional Information
The text was updated successfully, but these errors were encountered:
Original report (archived issue) by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).
Prerequisites
Description
If a package has components with a dependency relationship (such as ign-physics-dartsim-plugin, which depends on ignition-physics-sdf and ignition-physics-mesh), then then all the components must be listed in the
ign_find_package
call and in a proper order. The following is a workaround for this issue in ign-gazebo:Steps to Reproduce
I've demonstrated this issue with some examples committed to branch find_component_order_working and branch find_component_order. The
find_component_order_working
branch creates a packagecomponent_deps
that has two components:parent
andchild
, and thechild
component links against theparent
. There is a second package calleduse_component_deps1
that makes anign_find_package
call forcomponent_deps
specifying both componentsparent child
. This example builds fine:hg up find_component_order_working
mkdir build && cd build && cmake ..
make
(successful)Now on branch branch find_component_order, another example named
use_component_deps2
is added that differs fromuse_component_deps1
only in the order that components are specified in theign_find_package
call, but it fails to build:hg up find_component_order
mkdir build && cd build && cmake ..
make
(unsuccessful)Expected behavior:
I would expect the examples to build regardless of the order in which components are specified. Furthermore, I would that specifying a component would cause dependent components to be included as well (as in the ign-physics example mentioned above).
Actual behavior:
ign_find_package
is sensitive to the order of specified components when there is a dependent relationship, and dependent components must all be listed.Reproduces how often:
100%
Versions
ign-cmake1 and ign-cmake2
Additional Information
The text was updated successfully, but these errors were encountered: