Ubuntu 18.04 gcc 7.4.0をインストールします。

6827 ワード

Ubuntu 18.04 gcc-7.4をインストールします。
  • 、依存パッケージ
  • をインストールします。
  • インストールパッケージを取得し、解凍する
  • 依存パッケージ
  • をインストールします。
  • 、gcc
  • を取り付けます。
  • 、gccを検証する
  • 参照文献
  • 一、依存パッケージの設置
    インストールパッケージを取得し、解凍します。
    gcc-7.4ダウンロードhttp://mirrors.nju.edu.cn/gnu/gcc/ gmp 6.1.0、mpfr 3.1.4、mpc 1.0.3をそれぞれダウンロードします。http://mirror.linux-ia64.org/gnu/gcc/infrastructure/ 注意:gpm、mpfr、mpcは最新バージョンを選択すればいいです。ここでダウンロードしたのはgmp 6.1.0、mp 3.1.4、mpc 1.0.3それぞれgcc-7.4、gmp 6.1.0、mp 3.1.4、mpc 1.0.3 tar-xzvf gcc-74.0.tar.gz tar-xjvf gmp-6.0.tar.bz 2 tar-xjvf mpfr-3.tar.bz 2 tar-xzvmpc-1.0.3.tar.gz gccをホームディレクトリの下に入れて、解凍されたgmp 6.4、1.0.
    依存パッケージのインストール
    端末CTRL+ALT+Tを開き、以下のコマンドを入力して構成します。
    $cd gcc-7.4.0\
    
    gcc 7.4.0ディレクトリの下でファイルtmptを新規作成して、tmptに入ります。
    $cd tmpt\
    
    次にgmp、mpfr、mpcをインストールします。(インストール順序はgmpを先にインストールして、mpfrをインストールして、最後にmpcをインストールします。)
    $sudo apt-get install m4
    $../gmp-6.1.0/configure --prefix=/usr/local/gmp-6.1.0
    $make
    $sudo make install
    
    注意:もしエラーが発生したら、configur:error:could not find a working copilerからsudo appt-get install build-esentialを入力すれば、tempフォルダの中のすべてのファイルをクリアできます。temp空のフォルダだけ残してmpfrとmpcをインストールする方法はgmpと同じです。
    #mpfr  
    $../mpfr-3.1.4/configure --prefix=/usr/local/mpfr-3.1.4 --with-gmp=/usr/local/gmp-6.1.0
    $make
    $sudo make install
    
    上と同じようにtempフォルダをクリアします。
    #mpc  
    $../mpc-1.0.3/configure --prefix=/usr/local/mpc-1.0.3 --with-gmp=/usr/local/gmp-6.1.0 --with-mpfr=/usr/local/mpfr-3.1.4
    $make
    $sudo make install
    
    リンク3つのlib
    $export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-1.0.3/lib:/usr/local/gmp-6.1.0/lib:/usr/local/mpfr-3.1.4/lib 
    
    二、gccを取り付ける
    再度tempフォルダをクリアし、コマンドを入力してtempフォルダに入り、gccをインストールします。
    #  gcc
    $../../gcc-7.4.0/configure --prefix=/usr/local/gcc-7.4 -enable-threads=posix -disable-checking -disable-multilib -enable-languages=c,c++,java,objc -with-gmp=/usr/local/gmp-6.1.0 -with-mpfr=/usr/local/mpfr-3.1.4 -with-mpc=/usr/local/mpc-1.0.3
    $make
    $sudo make install
    
    注意:gccのインストール中に、エラーが発生する可能性があります。configure:error:The follwing requested langgge s could not be built:java Supported laggage are:c,brig,c+d,fortron,go,lto,objc,ob-c+c+解決方法:javeを直接実行します。error while loading shared libraries:libmpfr.so 4:cannot open shared oject file:No such file or directory Makefile:1933:recipe for's-selft'failed解決方法:sudo ln-s/usr/lib64-linux-gnu/libmpfr.so 6/usr/lib/x 86_64-linux-gnu/libmpfr.so.4 configure:error:in /usr/local/src/gcc-7.4.0/build/gcc': configure: error: C++ preprocessor "/lib/cpp" fails sanity check See config.log'for more details.解決方法:ap-get install build-esential ap-get install g+
    詳細なエラーの参照:https://blog.csdn.net/sslj81/article/details/102014787
    最後にgcc-7.4をインストールして/usr/bin/gccにリンクします。
    $cd /usr/bin 
    $sudo ln -s /usr/local/gcc-7.4/bin/gcc gcc7.4 
    $sudo ln -s /usr/local/gcc-7.4/bin/g++ g++7.4
    
    インストール完了
    三、検証gcc
    装着したばかりのgccバージョンに切り替えます。
    現在インストールされているすべてのgccバージョンを確認します。
    $ls /usr/bin/gcc*
    
    現在のバージョンを表示
    $gcc --version
    
    必要なバージョンを設定します。
    $sudo apt-get install gcc-7.4 gcc-7.4-multilib g++-7.4 g++-7.4-multilib
    $sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7.4 40
    sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7.4 40
    
    インストールしたばかりのバージョンに切り替えます。
    $sudo update-alternatives --config gcc
    
    prestokeep the current chice[*],or type selection numberが現れます。対応バージョンSelectionの下の数字を入力して、gccを設定して完成します。
    gcc実装vimを検証する
    $sudo apt-get install vim-gtk
    
    任意のフォルダの下に作成します。cファイル
    $sudo mkdir test
    $cd test
    $sudo vi test.c #  test.c  ,   hello.c  
    
    test.cで手動でコードを追加して保存します。
    1((zhi include 2 int main){3 print f(Complette validation);4}first.cファイルをコンパイルする
    $gcc first.c -o first
    
    test実行ファイルを生成すると、gccが正常に動作します。
    参考文献
    https://blog.csdn.net/qinglu000/article/details/22890419?utm_medium=distribute.pc_relevant.none-task-blog-Blog Command From Baidu-2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-Blog Command From Baidu-2https://blog.csdn.net/earbao/article/details/53495228 https://blog.csdn.net/sslj81/article/details/102014787 https://blog.csdn.net/qq_31347869/articale/detail/94379302