-
Notifications
You must be signed in to change notification settings - Fork 583
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
[ROS2 Foxy] rosdep install E: Unable to locate package ros-foxy-moveit- #438
Comments
you need to always run this with sudo (unless you are the root user when you run it). sudo apt-get update |
Also, what directory are you running the |
from colcon workspace Removed and tried fresh install - same error at building colcon workspace with Download MoveIt2 Source:wget https://raw.githubusercontent.com/ros-planning/moveit2/main/moveit2.repos does this look like complete source?
@tylerjw (thank you!) |
could it be that some of the branches in repositories: |
which repos are these missing ros deps sourced from: ros-foxy-moveit-common |
Two things. I see now that those instructions are missing something. You need to download the moveit2 repo itself into the source directory. git clone https://github.com/ros-planning/moveit2.git That's where those packages come from. If you want to make a PR against the website to add that to the step with the vcs commands please tag me and we can fix that. Secondly, does apt work on WSL? Why are you doing this as root? (I see the directories are owned by root). While ROS2 works on windows, moveit2 is still not building on windows as far as I know. There is an open PR from some people at Microsoft that is helping us with that. I'm not sure those instructions will work at all in WSL. |
I honestly don't know enough about WSL to know if these instructions will work. For example, does it use microsoft compilers (like visual studio) or are they ones that come from gnu or clang? How does the user account work in wsl? How does the package manager apt work? I don't develop for windows and while it is "Tier 1" according to OSRF for foxy, it is more that microsoft is putting engineering effort towards that goal (including helping us get moviet2 working on windows). For your own sanity, unless you are very familiar with Windows (and Linux) development and are willing to go into uncharted places to fix these things I'd suggest you just use an actual Ubuntu 20.04 install for working with ROS. |
The issue is that we removed the actual moveit2 repo itself from that file and you'll need to use git to manually clone it into your source directory. I'm sorry about that. We made this change because this file is meant to represent the source dependencies of the repo and should not contain the repo itself. |
it does
thanks @tylerjw , you mean a PR branch adding the missing step: Clone moveit2 source repository:
does this match the known fail on windows?
|
how can I find the PR? |
No suprise there. here is the PR for windows support: #286 It is out of date and last time I talked with the author he is working to update it. Unless you have a ton of experience developing for windows I would generally avoid trying to use windows for ros development. Ubuntu is what everyone who works on this repo (and much of the ros ecosystem) uses so it will be much easier for you to use if you are just getting started. That being said, it is possible to get it working and microsoft would be happy to know that there are people trying to do it. You will just have a much harder time getting help with anything ros if you are using windows. |
To get that PR to work you'll probably need the old versions of the other repos (from around the time he last updated it). |
Here is a fork that at one point worked on windows: https://github.com/lilustga/moveit2/tree/builds_on_windows |
no idea... I don't know if the author of the PR I linked has a similar setup to you (using wsl) or if there are other things. Like I said before, getting this to work on windows is not really supported because (outside of the author of that PR) no one here develops on windows. I attempted to get it to work once and gave up. Generally I feel like windows is very unfriendly to linux developers this and it would be much better if they just encouraged users to install a VM when they want to use something developed for linux instead of offering this wsl thing that is sort of half linux, half windows. imo windows is fine for playing games and is awful for everything else, especially using software developed on linux. |
I'm not trying to discourage you from learning ROS or using MoveIt2, I'm just warning you that I probably can't help you much and you will probably run into issues we have no way of reproducing if you are on Windows. |
it can use either :) thanks for solving the title issue |
One other thing I wanted to point out is we have a Discord channel if you'd like to chat with us about anything: https://discord.gg/RrySut8 If you do submit an issue to the tutorial github page or a PR for adding the instruction for cloning the repo ping me and we can get that fixed for others. |
Perhaps for @tylerjw: WSL "virtualised" a Linux kernel (not really, it was more a re-implementation of the Linux Kernel API/ABI), WSL 2 uses HyperV to run an actual VM (not a full one necessarily). In the end, a full userland of the Linux distribution of your choice can then be run without leaving/shutting down Windows10, as-if it was running natively on your machine (it basically is/was). Linux processes actually show up in the Task Manager and are recognised as regular programs. It's all Linux (Ubuntu typically), so no Windows specific fixes or hacks are needed typically (no Windows specific fixes, but WSL does have some quirks which may require other types of changes). Theoretically, anything which works under Linux should work in WSL/WSL2. In reality, there were problems with GUIs, GPU acceleration, access to hw (still a problem) and a few other restrictions. What @newcanopies is trying to do should work fine, and the problems should not be related to using WSL or WSL2. Those problems come up at a later point. For all intents and purposes, Ubuntu running in WSL (or any other Linux) is Ubuntu, so at the very least the build instructions should-just-work. |
@gavanderhoorn that is the premise. Simultaneous access to Ubuntu/WSL and Windows has several valid use-cases. while this WSL build fork https://github.com/lilustga/moveit2/tree/builds_on_windows I am trying to understand the patching method(s) used by @lilustga on the above Windows build PR, to try and patch it myself, but colcon build seems to fail in relation to compiler handling of namespaces among other things. |
Afaik @lilustga is an MS employee. IIRC, the changes he made were to make MoveIt2 build on Windows, using MSCV/Visual Studio. Building in a WSL2 session/terminal wouldn't need those, as you're not using Visual Studio there. |
Right! Thank you @gavanderhoorn initially I suspected that PR was for ROS on Windows (not WSL), but somehow got it conflated. Thanks for the Discord link @tylerjw I will troubleshoot why |
I'm sorry if I misunderstood, I hope doing this is as straightforward as it is on ubuntu. |
@newcanopies gavanderhoorn is correct that the changes are to build on Windows and not on WSL which would be building on whichever Linux kernel you are using. We have not tested moveit2 on WSL. Following these instructions and installing ros-foxy-desktop will allow you to use Moveit2 on Windows: |
Description
Installing moveit2 by instructions for Foxy
$
rosdep install -r --from-paths . --ignore-src --rosdistro foxy -y
apt: Failed to detect successful installation of ros-foxy-moveit- .............
See logs below.
environment
Actual behaviour
$
rosdep install -r --from-paths . --ignore-src --rosdistro foxy -y
The text was updated successfully, but these errors were encountered: