ROS安装:没有这样的文件或目录



根据ros wiki,要设置环境,我打字了

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

错误是

/opt/ros/kinetic/setup.bash:.:8: no such file or directory: /home/pikashun/setup.sh

~/.bashrc文件中,有source /opt/ros/kinetic/setup.bash行。

我在WSL上使用Ubuntu。我该如何改进?

谢谢!

我遇到了完全相同的问题。问题不是由于setup.bash ~/.bashrc而是由于您正在使用的外壳。事实证明,您可能使用的是与bash不同的外壳(即zsh)。当您执行 ROS 的setup.bash时,zsh以不同的方式解释以下命令(whici 在 /opt/ros/kinetic/setup.bash 中):

_CATKIN_SETUP_DIR=$(builtin cd "`dirname "${BASH_SOURCE[0]}"`" > /dev/null && pwd)

它正在设置_CATKIN_SETUP_DIR到您的用户目录。这就是为什么你得到错误,导致你使用错误的路径: /home/user/setup.bash而不是/opt/ros/kinetic/setup.bash

要检查这是否是您的问题,您可以通过在终端中执行以下命令来检查您正在使用的 shell:

echo $0; echo $SHELL

它可能会返回类似以下内容:

zsh
/bin/zsh

要从 zsh 切换到 bash ,请使用:

exec bash

完成此操作后,您可以毫无问题地使用源代码。

要切换回以前的 shell(假设是 zsh ),只需使用:

exec zsh

文件/opt/ros/kinetic/setup.bash除了从同一目录加载/opt/ros/kinetic/setup.sh外,什么都不做。我可能是您没有运行bash(检查您运行的终端),或者 WSL 的行为与预期有所不同。但是,您可以像这样更改附加命令:

 echo "source /opt/ros/kinetic/setup.sh" >> ~/.bashrc

或者,在您的情况下,由于该条目已存在于您的~/.bashrc中,因此将行source /opt/ros/kinetic/setup.bash编辑为source /opt/ros/kinetic/setup.sh

软件包或文件实际上不是从"http://wiki.ros.org/melodic/Installation/Ubuntu"下载的。要克服此错误,请先打开终端

  1. 检查您的目录pwd。如果你的目录像/home/'你的电脑名称',它实际上不会起作用。

  2. 更改目录 : 键入 cd /

  3. 从"http://wiki.ros.org/melodic/Installation/Ubuntu"中提到的从头开始继续安装过程

如果您愿意,旋律可以更改为动态或其他版本

最新更新