我的環境之ubuntu的apt-get 總結

前言

apt-get是必需要學會的,若是搞定apt-get,可解決不少問題。接下來鳥才啊總結以往經驗。linux

場景一 指定安裝版本

先查看有軟件有那些版本能夠安裝shell

apt-cache madison gcc-4.8

   gcc-4.8 | 4.8.5-4ubuntu8 | http://mirrors.aliyun.com/ubuntu bionic/universe amd64 Packages
   gcc-4.8 | 4.8.5-4ubuntu8 | http://mirrors.aliyun.com/ubuntu bionic/universe Sources
 
apt-get install -y gcc-4.8=4.8.5-4ubuntu8

場景二 查看那些軟件能夠安裝

apt list  // 輸出太多了

apt list | grep g++

場景三 安裝gcc g++

安裝gcc,g++ 太麻煩了。第一個是版本太多,第二個同軟件的依賴的版本不一樣,第三沒有搞清楚原理,浪費大量的時間。ubuntu

先查gcc的版本
apt list  | grep "g++"

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

g++/bionic 4:7.3.0-3ubuntu2 amd64
g++-4.8/bionic,now 4.8.5-4ubuntu8 amd64 [已安裝]
g++-4.8-multilib/bionic 4.8.5-4ubuntu8 amd64
g++-5/bionic 5.5.0-12ubuntu1 amd64
g++-5-aarch64-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-alpha-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-arm-linux-gnueabi/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-arm-linux-gnueabihf/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-i686-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-m68k-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-mips-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-mips64-linux-gnuabi64/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-mips64el-linux-gnuabi64/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-mipsel-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib/bionic 5.5.0-12ubuntu1 amd64
g++-5-multilib-arm-linux-gnueabi/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-arm-linux-gnueabihf/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-i686-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-mips-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-mips64-linux-gnuabi64/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-mips64el-linux-gnuabi64/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-mipsel-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-powerpc-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-powerpc64-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-s390x-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-sparc64-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-multilib-x86-64-linux-gnux32/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-powerpc-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-powerpc-linux-gnuspe/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-powerpc64-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-powerpc64le-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-s390x-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-sh4-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-sparc64-linux-gnu/bionic 5.5.0-12ubuntu1cross1 amd64
g++-5-x86-64-linux-gnux32/bionic 5.5.0-12ubuntu1cross1 amd64
g++-6/bionic 6.4.0-17ubuntu1 amd64
g++-6-aarch64-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-alpha-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-arm-linux-gnueabi/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-arm-linux-gnueabihf/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-hppa-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-i686-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-m68k-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-mips-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-mips64-linux-gnuabi64/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-mips64el-linux-gnuabi64/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-mipsel-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib/bionic 6.4.0-17ubuntu1 amd64
g++-6-multilib-arm-linux-gnueabi/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-arm-linux-gnueabihf/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-i686-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-mips-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-mips64-linux-gnuabi64/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-mips64el-linux-gnuabi64/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-mipsel-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-powerpc-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-powerpc64-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-s390x-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-sparc64-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-multilib-x86-64-linux-gnu/bionic 6.4.0-17ubuntu1cross1 i386
g++-6-multilib-x86-64-linux-gnux32/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-powerpc-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-powerpc-linux-gnuspe/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-powerpc64-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-powerpc64le-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-s390x-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-sh4-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-sparc64-linux-gnu/bionic 6.4.0-17ubuntu1cross1 amd64
g++-6-x86-64-linux-gnu/bionic 6.4.0-17ubuntu1cross1 i386
g++-6-x86-64-linux-gnux32/bionic 6.4.0-17ubuntu1cross1 amd64
g++-7/bionic 7.3.0-16ubuntu3 amd64
g++-7-aarch64-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-alpha-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-arm-linux-gnueabi/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-arm-linux-gnueabihf/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-hppa-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-i686-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-m68k-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-mips-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-mips64-linux-gnuabi64/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-mips64el-linux-gnuabi64/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-mipsel-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib/bionic 7.3.0-16ubuntu3 amd64
g++-7-multilib-arm-linux-gnueabi/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-arm-linux-gnueabihf/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-i686-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-mips-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-mips64-linux-gnuabi64/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-mips64el-linux-gnuabi64/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-mipsel-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-powerpc-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-powerpc64-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-s390x-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-sparc64-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-multilib-x86-64-linux-gnu/bionic 7.3.0-16ubuntu3cross1 i386
g++-7-multilib-x86-64-linux-gnux32/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-powerpc-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-powerpc-linux-gnuspe/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-powerpc64-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-powerpc64le-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-riscv64-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-s390x-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-sh4-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-sparc64-linux-gnu/bionic 7.3.0-16ubuntu3cross1 amd64
g++-7-x86-64-linux-gnu/bionic 7.3.0-16ubuntu3cross1 i386
g++-7-x86-64-linux-gnux32/bionic 7.3.0-16ubuntu3cross1 amd64
g++-8/bionic 8-20180414-1ubuntu2 amd64
g++-8-aarch64-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-alpha-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-arm-linux-gnueabi/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-arm-linux-gnueabihf/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-hppa-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-i686-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-m68k-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-mips-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-mips64-linux-gnuabi64/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-mips64el-linux-gnuabi64/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-mipsel-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib/bionic 8-20180414-1ubuntu2 amd64
g++-8-multilib-arm-linux-gnueabi/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-arm-linux-gnueabihf/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-i686-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-mips-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-mips64-linux-gnuabi64/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-mips64el-linux-gnuabi64/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-mipsel-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-powerpc-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-powerpc64-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-s390x-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-sparc64-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-multilib-x86-64-linux-gnu/bionic 8-20180414-1ubuntu2cross1 i386
g++-8-multilib-x86-64-linux-gnux32/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-powerpc-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-powerpc-linux-gnuspe/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-powerpc64-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-powerpc64le-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-riscv64-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-s390x-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-sh4-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-sparc64-linux-gnu/bionic 8-20180414-1ubuntu2cross1 amd64
g++-8-x86-64-linux-gnu/bionic 8-20180414-1ubuntu2cross1 i386
g++-8-x86-64-linux-gnux32/bionic 8-20180414-1ubuntu2cross1 amd64
g++-aarch64-linux-gnu/bionic 4:7.3.0-3ubuntu2 amd64
g++-alpha-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-arm-linux-gnueabi/bionic 4:7.3.0-3ubuntu2 amd64
g++-arm-linux-gnueabihf/bionic 4:7.3.0-3ubuntu2 amd64
g++-hppa-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-i686-linux-gnu/bionic 4:7.3.0-3ubuntu2 amd64
g++-m68k-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-mingw-w64/bionic,bionic 7.3.0-11ubuntu1+20.2build1 all
g++-mingw-w64-i686/bionic 7.3.0-11ubuntu1+20.2build1 amd64
g++-mingw-w64-x86-64/bionic 7.3.0-11ubuntu1+20.2build1 amd64
g++-mips-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-mips64-linux-gnuabi64/bionic 4:7.3.0-3ubuntu1 amd64
g++-mips64el-linux-gnuabi64/bionic 4:7.3.0-3ubuntu1 amd64
g++-mipsel-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-multilib/bionic 4:7.3.0-3ubuntu2 amd64
g++-multilib-arm-linux-gnueabi/bionic 4:7.3.0-3ubuntu2 amd64
g++-multilib-arm-linux-gnueabihf/bionic 4:7.3.0-3ubuntu2 amd64
g++-multilib-i686-linux-gnu/bionic 4:7.3.0-3ubuntu2 amd64
g++-multilib-mips-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-multilib-mips64-linux-gnuabi64/bionic 4:7.3.0-3ubuntu1 amd64
g++-multilib-mips64el-linux-gnuabi64/bionic 4:7.3.0-3ubuntu1 amd64
g++-multilib-mipsel-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-multilib-powerpc-linux-gnu/bionic 4:7.3.0-3ubuntu2 amd64
g++-multilib-powerpc64-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-multilib-s390x-linux-gnu/bionic 4:7.3.0-3ubuntu2 amd64
g++-multilib-sparc64-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-multilib-x86-64-linux-gnu/bionic 4:7.3.0-3ubuntu2 i386
g++-multilib-x86-64-linux-gnux32/bionic 4:7.3.0-3ubuntu1 amd64
g++-powerpc-linux-gnu/bionic 4:7.3.0-3ubuntu2 amd64
g++-powerpc-linux-gnuspe/bionic 4:7.3.0-3ubuntu1 amd64
g++-powerpc64-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-powerpc64le-linux-gnu/bionic 4:7.3.0-3ubuntu2 amd64
g++-riscv64-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-s390x-linux-gnu/bionic 4:7.3.0-3ubuntu2 amd64
g++-sh4-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-sparc64-linux-gnu/bionic 4:7.3.0-3ubuntu1 amd64
g++-x86-64-linux-gnu/bionic 4:7.3.0-3ubuntu2 i386
g++-x86-64-linux-gnux32/bionic 4:7.3.0-3ubuntu1 amd64

查詢能夠安裝的g++軟件太多了。待鳥菜啊給你解釋下:g++{?}, ?= 版本。g++或者gcc有太多版本了,其餘軟件對他們的版本很是敏感因此每一個版本對應一個軟件。好比g++8 就是g++ 第八個版本的編譯器。能夠把全部編譯器下載下來,方便切換。app

安裝
niaocai:~/.local/share/applications$ ll /usr/bin/gcc*
lrwxrwxrwx 1 root root      5 2月  11  2016 /usr/bin/gcc -> gcc-5*
-rwxr-xr-x 1 root root 772280 3月  19  2018 /usr/bin/gcc-4.8*
-rwxr-xr-x 1 root root 915736 8月  28  2018 /usr/bin/gcc-5*
lrwxrwxrwx 1 root root      8 2月  11  2016 /usr/bin/gcc-ar -> gcc-ar-5*
-rwxr-xr-x 1 root root  27088 3月  19  2018 /usr/bin/gcc-ar-4.8*
-rwxr-xr-x 1 root root  31136 8月  28  2018 /usr/bin/gcc-ar-5*
lrwxrwxrwx 1 root root      8 2月  11  2016 /usr/bin/gcc-nm -> gcc-nm-5*
-rwxr-xr-x 1 root root  27088 3月  19  2018 /usr/bin/gcc-nm-4.8*
-rwxr-xr-x 1 root root  31136 8月  28  2018 /usr/bin/gcc-nm-5*
lrwxrwxrwx 1 root root     12 2月  11  2016 /usr/bin/gcc-ranlib -> gcc-ranlib-5*
-rwxr-xr-x 1 root root  27088 3月  19  2018 /usr/bin/gcc-ranlib-4.8*
-rwxr-xr-x 1 root root  31136 8月  28  2018 /usr/bin/gcc-ranlib-5*

已經存在gcc-4.8與gcc-5兩個版本的存在,同時你們看到/usr/bin/gcc 是一個軟鏈接,指向gcc-5。目前的gcc 是第五個版本的編譯器。eclipse

  1. 改變gcc的軟鏈接
  2. 使用gcc-5 這樣指定編譯器。好比修改eclipse的默認編譯器是gcc-5
相關文章
相關標籤/搜索