天天看點

Ubuntu —— 庫安裝 :: 手動安裝package

參考:

https://www.jianshu.com/p/8ed33a5246f1

現象:

在sudo apt-get install ros-kinetic-serial安裝ros 序列槽包時,出現了下面的錯誤,導緻無法安裝

Err:1 http://packages.ros.org/ros/ubuntu xenial/main amd64

ros-kinetic-serial amd64 1.2.1-0xenial-20180809-141256-0800 404 Not

Found [IP: 2605:bc80:3010::134 80] E: Failed to fetch

http://packages.ros.org/ros/ubuntu/pool/main/r/ros-kinetic-serial/ros-kinetic-serial_1.2.1-0xenial-20180809-141256-0800_amd64.deb

404 Not Found [IP: 2605:bc80:3010::134 80]

E: Unable to fetch some archives, maybe run apt-get update or try with

–fix-missing?

試了更新source源位址,仍然無法安裝這時嘗試手動安裝;

解決辦法:

手動搜尋安裝

1.複制上面提示的位址:http://packages.ros.org/ros/ubuntu/pool/main/r/ros-kinetic-serial/

打開網頁後找到與自己的系統對應的安裝包的版本

Ubuntu —— 庫安裝 :: 手動安裝package

發現我們在sudo apt-get install ros-kinetic-serial的時候,Ubuntu自動擷取的版本是ros-kinetic-serial_1.2.1-0xenial-20180809-141256-0800_amd64.deb,但是我們打開官網後,發現這個版本已經沒有了,隻有最新的版本ros-kinetic-serial_1.2.1-0xenial-20190607-172310-0800_amd64.deb。這就是我們直接使用指令安裝的時候,Ubuntu找不到安裝源檔案的原因。接下裡我們下載下傳與上面的錯誤現象提示中對應的amd64.deb版本

Ubuntu —— 庫安裝 :: 手動安裝package

使用指令:sudo dpkg -i 軟體包名.deb安裝該包

如果安裝失敗的話指令行中會提示缺少哪些依賴,按照同樣的方式先手動安裝好依賴的package,顯示下面的提示,安裝成功。

Selecting previously unselected package ros-kinetic-serial. (Reading

database … 419552 files and directories currently installed.)

Preparing to unpack

ros-kinetic-serial_1.2.1-0xenial-20190607-172310-0800_amd64.deb …

Unpacking ros-kinetic-serial (1.2.1-0xenial-20190607-172310-0800) …

Setting up ros-kinetic-serial (1.2.1-0xenial-20190607-172310-0800) …

現在可以正常使用該包了:

#include <serial/serial.h>
serial::Serial led_serial;
           

解除安裝手動安裝的包

解除安裝.deb檔案,可以使用Adept,或輸入:

sudo apt-get remove 軟體包名稱