ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Those two libraries do conflict on purpose. They both provide the same functionality, "libopenni_sensor" and conflict with other providers of "libopenni_sensor"

I don't believe you're supposed to be able to install them side by side.

Those two libraries do conflict on purpose. They both provide the same functionality, "libopenni_sensor" and conflict with other providers of "libopenni_sensor"

I don't believe you're supposed to be able to install them side by side.

  • https://launchpad.net/ubuntu/trusty/amd64/libopenni-sensor-pointclouds0/5.1.0.41.1-1

  • https://launchpad.net/ubuntu/trusty/amd64/libopenni-sensor-primesense0/5.1.0.41-3

Those two libraries do conflict on purpose. They both provide the same functionality, "libopenni_sensor" and conflict with other providers of "libopenni_sensor"

I don't believe you're supposed to be able to install them side by side.

  • https://launchpad.net/ubuntu/trusty/amd64/libopenni-sensor-pointclouds0/5.1.0.41.1-1

  • https://launchpad.net/ubuntu/trusty/amd64/libopenni-sensor-primesense0/5.1.0.41-3

Edit: It's not just that one file. That one file is just the first conflicting file.

If you install ros-indigo-openni-camera it does seem to lock up as described by @asayler That is a bad failure of apt

To recover you can do:

 apt-get -o Dpkg::Options::="--force-overwrite" -f install

Where you'll see that the two packages completely clobber each other.

Unpacking libopenni-sensor-primesense0 (5.1.0.41-3+trusty1) ...
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/etc/openni/GlobalDefaults.ini', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnDeviceSensorV2.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnDeviceFile.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnFormats.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnDDK.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnCore.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libopenni-sensor-primesense0/XnSensorServer', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
Setting up libssl1.0.0:amd64 (1.0.1f-1ubuntu2.5) ...

And it will continue installing.

I retried with --no-install--recommends and it worked installed successfully.

This is probably worth filing upstream as a bug for libopenni developers to possibly remove the recommends. As the ros package can't do much more than declare it's dependencies, which are correct.

It's also a bug in apt that it doesn't catch the declared conflict.

Another work around is to install libopenni-sensor-primesense0 before or explicitly:

root@4529e16a9555:/# sudo apt-get install libopenni-sensor-primesense0 ros-indigo-openni-camera
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libopenni-dev libopenni-sensor-primesense-dev libopenni0 openni-utils
Suggested packages:
  openni-doc
The following NEW packages will be installed:
  libopenni-dev libopenni-sensor-primesense-dev libopenni-sensor-primesense0 libopenni0 openni-utils ros-indigo-openni-camera
0 upgraded, 6 newly installed, 0 to remove and 41 not upgraded.
Need to get 1161 kB of archives.
After this operation, 6668 kB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.

WIthout explicitly calling it out this won't work.

root@4529e16a9555:/# sudo apt-get install ros-indigo-openni-camera
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libopenni-dev libopenni-sensor-pointclouds0 libopenni-sensor-primesense-dev libopenni-sensor-primesense0 libopenni0 openni-utils
Suggested packages:
  openni-doc
The following NEW packages will be installed:
  libopenni-dev libopenni-sensor-pointclouds0 libopenni-sensor-primesense-dev libopenni-sensor-primesense0 libopenni0 openni-utils ros-indigo-openni-camera
0 upgraded, 7 newly installed, 0 to remove and 41 not upgraded.
Need to get 1461 kB of archives.
After this operation, 8027 kB of additional disk space will be used.
Do you want to continue? [Y/n] n

Overall this is a problem of delayed conflict detection. I'm not sure why apt doesn't catch it earlier, it seems like it should. I tested aptitude as well and it gets into the same problem.

Update: This should be fixed by removing the masking package version from the PCL ppa: https://github.com/ros/rosdistro/issues/5462

Those two libraries do conflict on purpose. They both provide the same functionality, "libopenni_sensor" and conflict with other providers of "libopenni_sensor"

I don't believe you're supposed to be able to install them side by side.

  • https://launchpad.net/ubuntu/trusty/amd64/libopenni-sensor-pointclouds0/5.1.0.41.1-1

  • https://launchpad.net/ubuntu/trusty/amd64/libopenni-sensor-primesense0/5.1.0.41-3

Edit: It's not just that one file. That one file is just the first conflicting file.

If you install ros-indigo-openni-camera it does seem to lock up as described by @asayler That is a bad failure of apt

To recover you can do:

 apt-get -o Dpkg::Options::="--force-overwrite" -f install

Where you'll see that the two packages completely clobber each other.

Unpacking libopenni-sensor-primesense0 (5.1.0.41-3+trusty1) ...
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/etc/openni/GlobalDefaults.ini', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnDeviceSensorV2.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnDeviceFile.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnFormats.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnDDK.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libXnCore.so.0', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/libopenni-sensor-primesense0/XnSensorServer', which is also in package libopenni-sensor-pointclouds0 5.1.0.41.1-1
Setting up libssl1.0.0:amd64 (1.0.1f-1ubuntu2.5) ...

And it will continue installing.

I retried with --no-install--recommends and it worked installed successfully.

This is probably worth filing upstream as a bug for libopenni developers to possibly remove the recommends. As the ros package can't do much more than declare it's dependencies, which are correct.

It's also a bug in apt that it doesn't catch the declared conflict.

Another work around is to install libopenni-sensor-primesense0 before or explicitly:

root@4529e16a9555:/# sudo apt-get install libopenni-sensor-primesense0 ros-indigo-openni-camera
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libopenni-dev libopenni-sensor-primesense-dev libopenni0 openni-utils
Suggested packages:
  openni-doc
The following NEW packages will be installed:
  libopenni-dev libopenni-sensor-primesense-dev libopenni-sensor-primesense0 libopenni0 openni-utils ros-indigo-openni-camera
0 upgraded, 6 newly installed, 0 to remove and 41 not upgraded.
Need to get 1161 kB of archives.
After this operation, 6668 kB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.

WIthout explicitly calling it out this won't work.

root@4529e16a9555:/# sudo apt-get install ros-indigo-openni-camera
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libopenni-dev libopenni-sensor-pointclouds0 libopenni-sensor-primesense-dev libopenni-sensor-primesense0 libopenni0 openni-utils
Suggested packages:
  openni-doc
The following NEW packages will be installed:
  libopenni-dev libopenni-sensor-pointclouds0 libopenni-sensor-primesense-dev libopenni-sensor-primesense0 libopenni0 openni-utils ros-indigo-openni-camera
0 upgraded, 7 newly installed, 0 to remove and 41 not upgraded.
Need to get 1461 kB of archives.
After this operation, 8027 kB of additional disk space will be used.
Do you want to continue? [Y/n] n

Overall this is a problem of delayed conflict detection. I'm not sure why apt doesn't catch it earlier, it seems like it should. I tested aptitude as well and it gets into the same problem.