下載gcc最新版然後解壓到文件夾
cd /home/machen/cpp/gcc-4.8.1
./contrib/download_prerequisites
cd ..
mkdir build_gcc_4.8.1
cd build_gcc_4.8.1
../gcc-4.8.1/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j23
make install
OK,已經安裝完成
確定新安裝的GCC的路徑,之前安裝時記下最後mv時的路徑即可,我是默認安在了/usr/local/bin
ls /usr/local/bin | grep gcc
/usr/sbin/update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-unknown-linux-gnu-gcc-4.8.1 40
gcc --version查看版本
/usr/sbin/update-alternatives --install /usr/bin/g++ g++ /usr/local/bin/g++ 40
g++ --version 查看版本
版本如果不對可以退出登錄,重新進入下即可。
測試一下c++ 11的新功能:
#include <array>
#include <iostream>
using namespace std;
int main()
{
std::array<int, 3> arr = {2, 3, 5};
for(auto& s : arr){
cout << s << endl;
}
}
編譯:
g++ test_11.c -std=gnu++0x或g++ test_11.c -std=c++0x
./a.out
輸出:
2
3
5