-
Notifications
You must be signed in to change notification settings - Fork 171
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
rosdep does not use os_override in all code paths #51
Comments
can you try using ROS_OS_OVERRIDE=foo:bar in your environment and see if it gives a different result? I can't reproduce it on my machine and my guess is that it's creating the filter for the detected os but not using it on Ubuntu machines, which doesn't error. |
I will try in the morning and post results. Thanks, Kurt On Thu, Jan 3, 2013 at 3:03 PM, Tully Foote [email protected]:
|
This is likely connected to #10 |
Iset the ros os override environment and received a different error. So, yes, I suspect the issue in #51 and #10 are similar.
|
I've tracked down the os detection issue. The raspberrypi does not install lsb-release by default, which is what it uses to detect the OS. It does need lsb-release installed to detect debian type systems. |
Thank you On Mon, Jan 7, 2013 at 5:21 PM, Tully Foote [email protected]:
|
The underlying issue is that rosdep is not passing the os_override into the calls to rospack. This was not an originally designed code path and it relies on the detection to work and not be different than the host. This generally isn't an issue because at this point it is only seeking to find out if the package is a rosdep, not what's its value. Installing lsb-release will at least make the detection work. |
So if you update the deb base-files to get the newer version (7.1) lsb_release will return codename wheezy instead of n/a which makes rosdep much happier. There's still the issue that it does not use the os_override through all code paths. I'm going to retitle this ticket as such. Successfully detecting using lsb_release fixes the failures to lookup with [] version. For the other ones such as geometry. That means that you do not have that package from source in your CMAKE_PREFIX_PATH (aka the workspace your building for simple cases) and since it can't find it from source it's looking for it from binary packages, and failing. To get complete sets of sources I suggest using the variant rosinstall generator: I used this url for testing: http://packages.ros.org/web/rosinstall/generate/raw/groovy/ros_comm |
This also means that rosdep totally ignores both --os=osx:macports and ROS_OS_OVERRIDE=osx:macports, and tries to use brew, at which point tragicomedy ensues and you have to install every single dependency yourself through macports after parsing each error separately to find out about said dependency. |
This is still and issue, any chance for a fix? |
The issue affects me as well #890 (comment) |
Was: Failed to detect wheezy OS running rosdep on raspberry
I was stepping through the generic source installation steps to try and install groovy on a raspberry pi.
At step 2.1.3 I ran the command rosdep and failed to find (in my case override) the OS.
The text was updated successfully, but these errors were encountered: