ROS意外崩掉解決方案

是皮皮攀呀,發表於2018-11-13

最近真的是每天都有新驚喜{手動微笑}

明明昨天一切正常,過一晚來開啟電腦,執行跑了幾百遍的程式碼就開始給我報錯,說ROS各種沒安裝(exm?簡直黑人問號臉了好嘛!)

又照著前面寫過的ROS安裝步驟走:重灌ubuntu16.04之後的基礎操作(介面美觀+安裝瀏覽器+更新軟體源+安裝ROS

開始報錯如下:

下列軟體包有未滿足的依賴關係:
 ros-kinetic-desktop-full : 依賴: ros-kinetic-desktop 但是它將不會被安裝
                            依賴: ros-kinetic-perception 但是它將不會被安裝
                            依賴: ros-kinetic-simulators 但是它將不會被安裝
                            依賴: ros-kinetic-urdf-tutorial 但是它將不會被安裝
N: 忽略‘google-chrome.list.2’(於目錄‘/etc/apt/sources.list.d/’),鑑於它的副檔名無效
N: 忽略‘google-chrome.list.1’(於目錄‘/etc/apt/sources.list.d/’),鑑於它的副檔名無效
E: 無法修正錯誤,因為您要求某些軟體包保持現狀,就是它們破壞了軟體包間的依賴關係。

所以接下來的探險就是基於以上問題了。打怪打怪!

-----------------------------------------------------------------------------------------------------------------------------

網上找到的一種解決方案:

sudo apt-get install aptitude

sudo aptitude install ros-kinetic-desktop-full

點選Y

然後再次安裝就可以成功了。

事實證明上面這句話是虛假的。

再次安裝走到新開啟終端就進行不下去了。

執行roscore,新的提示:

程式“roscore”尚未安裝。 您可以使用以下命令安裝:
sudo apt install python-roslaunch

按照提示走吧,又報錯:

下列軟體包有未滿足的依賴關係:
 python-roslaunch : 依賴: python-roslib 但是它將不會被安裝
N: 忽略‘google-chrome.list.2’(於目錄‘/etc/apt/sources.list.d/’),鑑於它的副檔名無效
N: 忽略‘google-chrome.list.1’(於目錄‘/etc/apt/sources.list.d/’),鑑於它的副檔名無效
E: 無法修正錯誤,因為您要求某些軟體包保持現狀,就是它們破壞了軟體包間的依賴關係。

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

 source ~/.bashrc

然後在終端中輸入roscore  成功執行。

到這一步我瞬間想到是昨晚為了不開啟每個終端的時候都顯示“bash: /opt/ros/kinetic/setup.bash: 沒有那個檔案或目錄“

就把這一行給註釋掉了。。。。

————————————————————————————————————————————————————

找了很多原因,根源因該是源不對,換源的時候都提示“下載軟體倉庫資訊失敗,檢查網路連線”,

可是我的網路一點問題都沒有。

試著換了中國的伺服器,主伺服器還是不行,還是提示下載失敗。(最後成功的時候預設的是主伺服器)

試了網上的另一個命令“sudo apt-get install wine”

並且在軟體和更新的其他軟體中刪除了一些錯誤的選項。

接著執行ros的安裝,

出現錯誤:

下列軟體包有未滿足的依賴關係:  ros-kinetic-desktop-full : 依賴: ros-kinetic-desktop 但是它將不會被安裝  

執行下述指令:  

sudo apt-get update
sudo apt-get install ros-kinetic-desktop ros-kinetic-desktop  ros-kinetic-perception  ros-kinetic-perception ros-kinetic-simulators   

此時再“sudo apt-get install ros-kinetic-desktop-full”      

會顯示新安裝啦2個軟體包。

繼續走ROS安裝流程。成功啦!!!感恩的心。

血的教訓,系統提示你自動刪除可以不用的軟體包來釋放記憶體的時候,一定!不要!刪!血得教訓。

 

 

 


 

 

 

 

相關文章