anqixu / ueye_cam

A ROS nodelet and node that wraps the driver API for UEye cameras by IDS Imaging Development Systems GMBH.
Other
60 stars 102 forks source link

Plan for releasing DEB? #10

Closed 130s closed 9 years ago

130s commented 9 years ago

We're getting more dependent on ueye_cam package with the dual-arm platform called NEXTAGE OPEN from Kawada Industries Inc. Thanks for the great work!

Being able to install the package by apt is ultra convininent in many ways, and ROS makes the whole cumbersome process of doing it much shorter and comfortable (tutorial). Is there a plan to do so soon?

If you're unsure about how to do it, or unwilling to spend that time, I'm happy in taking that role. In that case I have to request a commit/write right to this repository (only situation I commit w/o opening pull request is when I create a tag, by using a special tool called catkin_prepare_release. When I have normal commits I open PReq as usual).

anqixu commented 9 years ago

Hi Isaac:

I have been wanting to do this ever since the original release. Unfortunately, as you know, IDS imaging requires users to register before allowing to download the necessary drivers. I've talked to Dirk Thomas previously, and he said that in these cases where system dependencies cannot be fetched publically, it would be difficult to release a deb for any subsequent wrappers, as is the case for ueye_cam.

If you have any ideas to resolve issue, I'd be happy to know, and I would love to be able to facilitate the process of installing ueye_cam.

Cheers;

Anqi Xu

130s commented 9 years ago

Okay actually I wasn't that sure about the problems about installing SDK (I've done it a long time ago). I can think of at least 2 issues. I'm thinking out loud. But the issue#1 below is a bottleneck as you know:

  1. Obtaining SDK requires registration as you pointed out. I saw ueye ROS package is now released as DEB, which downloads a tarball of SDK (during build time from a custom location. Releated question). So I'm not sure but there might be a way to officially get one. But if there are no way, we might just have to give up, since we like to maintain compliance with other business entity. @emijah do you have any idea on this?
  2. Downloading sources during build time is generally a bad practice and honestly I've been warned by ROS maintainers about some of our packages that do it.
    • If we could somehow get around the issue#1 above, we can release the SDK as a 3rd party library so that your package can simply depend on it.
emijah commented 9 years ago

If you are a ueye camera user, you should have access to the SDK.

One way may be to prepare a dummy library based on the include files that come with the SDK, and link to that. This should by-pass the download during compile problem. For the binary install, it may be possible to prepare a post_install script that replaces the dummy library with a link to the real one.

anqixu commented 9 years ago

I'll look into this option, and also try to contact and reason with IDS, next week. Thanks for the suggestions guys!

k-okada commented 9 years ago

PointGray seems same situation and the driver download the library during build process but not distribute them, see https://github.com/ros-drivers/pointgrey_camera_driver/blob/master/pointgrey_camera_driver/CMakeLists.txt#L17

anqixu commented 9 years ago

Thanks for the useful hints guys!

I've incorporated the install script: 97cfc9d737b0b9c6c9bd526047501cafcdd57a97 Please help me test if you guys can.

I will look into bloom/deb release very soon.

anqixu commented 9 years ago

https://github.com/ros/rosdistro/pull/6003 https://github.com/ros/rosdistro/pull/6004

Feedback will be greatly appreciated!

130s commented 9 years ago

Happy Friday release yo :beers: