welcom ! Handel home

2025年2月17日 星期一

(Robot_arm)catkin build 發生錯誤的原因 for [moveit_ws]

 

📌 catkin build 發生錯誤的原因

你的 catkin build 命令失敗,主要是因為 已經存在的 build 目錄包含了不同的工作空間路徑

錯誤訊息解析:

vbnet
[build] Error: Attempting to build a catkin workspace using build space: "/home/ubuntu/data/moveit_ws/build" [build] but that build space's most recent configuration differs from the commanded one in [build] ways which will cause problems.

這表示 之前的 catkin build 是在 /home/pj/moveit_ws/ 內執行,但你現在的工作目錄是 /home/ubuntu/data/moveit_ws/
catkin_tools 會記錄 上次的工作空間,如果它發現當前目錄與之前不同,就會報錯。


✅ 解決方案

你可以使用 catkin clean 清除之前的 build 設定,然後重新編譯。

🔹 方法 1:清除 build 目錄

bash
catkin clean -b

然後重新執行 catkin build

bash
catkin build

🔹 方法 2:完全清除 devel, build, install

如果 catkin clean -b 仍然無法解決問題,嘗試 完整清除

bash
catkin clean -a

這將刪除:

  • build/(編譯結果)
  • devel/(開發環境)
  • install/(安裝目錄)

然後重新執行:

bash
catkin build

🔹 方法 3:手動刪除舊的 catkin_tools 設定

如果 catkin clean 仍然報錯,可以手動刪除 builddevel 目錄:

bash
rm -rf build devel install catkin build

這樣 catkin build 會重新初始化 moveit_ws


📌 結論

方法適用場景
catkin clean -b清除 build/ 目錄,適用於 輕量級錯誤
catkin clean -a完整清除 build/, devel/, install/,適用於 更改工作目錄後
rm -rf build devel install手動刪除所有舊設定,確保 catkin build 重新初始化

🚀 建議:先嘗試 catkin clean -b,如果還是不行,再使用 catkin clean -a 或手動刪除 build/ devel/ install/ 🎉

沒有留言: