在安装LLVM clang和linaro-arm-linux-gcc过程中可能会出现
arm-linux-gnueabihf-gcc: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or director
类似问题,这个是因为系统带的gcc版本太低了或太高。
如果要使用C++11,Ubuntu12.04 LTS默认GCC G++为4.6.*版本(本机为4.6.3版),其不支持最新的c++11标准。
解决办法:
以下介绍升级GCC/G++:
#加入此源为必须,否则容易查找不到要升级的版本
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 20
sudo update-alternatives --config gcc
sudo update-alternatives --config g++
gcc --version
g++ --version
显示为升级之后的版本,接下来就可以放心使用-std=c++11命令了