您好,登錄后才能下訂單哦!
這篇文章主要介紹“c++11和14是怎么編譯的”,在日常操作中,相信很多人在c++11和14是怎么編譯的問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”c++11和14是怎么編譯的”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
學習c++11的時候,我的redhat虛擬機上的g++才是4.1.2版本,而g++4.7版本才開始支持c++11的,所以要使用c++11,首先需要將我們的g++編譯器升級到4.7或者以上版本,這里我選擇的是GCC的 7.1.0版本。
注意:大意義上來講,GCC是一個編譯器集合,拿到源代碼后編譯出來各種編譯器,如果我們選擇編譯c,c++的編譯器,就會生成gcc和g++。這里的gcc是專門正對于c代碼的編譯器,g++則是專門針對于c++代碼的編譯器,gcc和g++最顯著的區別是g++會調用-lstdc++庫,gcc不會。
wget http://ftp.gnu.org/gnu/gcc/gcc-6.1.0/gcc-7.1.0.tar.bz2tar -jxvf gcc-7.1.0.tar.bz2
cd gcc-7.1.0./contrib/download_prerequisites //這個腳本會自動下載依賴項,但耗時很長,先去吃飯了
建立一個單獨的目錄用于存放編譯生成文件
mkdir gcc-build-7.1.0cd gcc-build-7.1.0../configure -enable-checking=release -enable-languages=c,c++ -disable-multilibmake -j4make install
此時使用g++ --version,就可以看到版本已經是7.1.0了。
一般的,我們要編譯c++11,都要使用g++ -std=c++11,但據我測試,7.1.0的版本已經默認支持c++11和c++14了,所以就不用再寫明-std=c++11的選項了,可以直接使用g++編譯c++11或者c++14的代碼啦,當然如果想知道某個特性到底是屬于c++11還是c++14,就可以使用-std=c++11和-std=c++14來辨別。
到此,關于“c++11和14是怎么編譯的”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。