環境#
Windows 11 安裝的 wsl-ubuntu
Error: jammy Release 404 Not Found#
Err:10 http://packages.ros.org/ros/ubuntu jammy Release 404 Not Found [IP: 140.211.166.134 80] Reading package lists... Done
W: https://dl.yarnpkg.com/debian/dists/stable/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
E: The repository 'http://packages.ros.org/ros/ubuntu jammy Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details.
解決方案#
請確認 ros 版本和 ubuntu 版本是否匹配,我的問題在於 ubuntu22.04 只能安裝 ros2 無法兼容 ros1,因為 ros1 最高只支持到 ubuntu20.04。於是在通過 wsl 下載了 ubuntu20.04,步驟如下。
推薦 powershell 工具#
蠻推薦微軟官方的這個 PowerShell美區連結
wsl 安裝 ubuntu20.04#
windows 打開 powershell,現在要檢索可以直接安裝的系統,輸入:
wsl --list --online
安裝 20.04 版本 ubuntu 請輸入:
wsl --install -d Ubuntu-20.04
vscode 啟動 wsl#
若存在多個 wsl 安裝的系統,在 vscode 中如何鏈接?
先安裝 ssh 擴展
如圖操作,然後選擇需要的 20.04 的 ubuntu 系統
即可
Error: 'TURTLEBOT3_MODEL' is not set#
安裝完成後用 roslaunch 命令嘗試啟動 turtlebot3 package 啟動報錯如下:
$ roslaunch turtlebot3_gazebo turtlebot3_world.launch
RLException: Invalid <arg> tag: environment variable 'TURTLEBOT3_MODEL' is not set.
Arg xml is <arg name="model" default="$(env TURTLEBOT3_MODEL)" doc="model type [burger, waffle, waffle_pi]"/>
The traceback for the exception was written to the log file
解決方案#
我的解決辦法是設置成 waffle,可按需修改
export TURTLEBOT3_MODEL=waffle
再次嘗試