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++ 太麻煩了。第一個是版本太多,第二個同軟件的依賴的版本不一樣,第三沒有搞清楚原理,浪費大量的時間。ubuntu
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