根本上 出現這個編譯錯誤的原因在g++ gcc 版本不夠高。
添加源(Ubuntu)
1 $ sudo add-apt-repository ppa:ubuntu-toolchain-r/test 2 $ sudo apt-get update
安裝4.8版本
1 $ sudo apt-get install gcc-4.8 g++-4.8
查看本地安裝版本
1 $ ls -lh /usr/bin/g++* 2 3 這里應該可以看到本機安裝了4.6和4.8兩個版本。
切換版本
1 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.6 2 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 40 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8 3 sudo update-alternatives --config gcc 4 5 **選擇4.8版本的序號**
再次查看g++版本
1 g++ --version 2 3 確認為 4.8 版本。
參考1:http://www.cocos2d-x.org/forums/6/topics/37467?r=37788#message-37788
參考2:http://blog.csdn.net/riverweed/article/details/21329211