有的时候,我不是第一次遇到这种时候,编译内核时报出编译器BUG。如果是ubuntu还好一点,默认软件仓库中就有好几个GCC,换一换总能找到一个好使的,实在不行还有个Tooltrain的ppa,但Debian却没什么选择,可能可以去testing里或unstable里找找,不过这些都不够灵活,让我们直接编译GCC吧!

听起来很高大上的东西,实则很简单了,参考如下两篇文章即可

第一篇文章是官方文档,多看看。

安装需要的库

sudo apt install libgmp-dev libmpfr-dev libmpc-dev

下载GCC

官方镜像页找个离着近点的镜像(比如日本),下载release中的版本,比如 http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-6.4.0/gcc-6.4.0.tar.xz

编译和安装

tar xf gcc-6.4..tar.xz
mkdir gcc-build
cd gcc-build
../gcc-6.4./configure --prefix=/usr/local/gcc-6.4. --enable-checking=release --enable-languages=c,c++ --disable-multilib --program-suffix=-6.4
make -j8
sudo make install

安装alternative

上面我们编译完的gcc路径是 /usr/local/gcc-4.6.0/bin/gcc-4.6,我希望使用的时候直接替换系统的cc,但又要便于我来回切换,update-alternatives 已经有这样的功能了,下面我们就来安装alternative

sudo update-alternativess --install /usr/bin/cc cc /usr/local/gcc-4.6./bin/gcc-4.6
sudo update-alternativess --install /usr/bin/c++ c++ /usr/local/gcc-4.6./bin/g++-4.6 30

最后一个参数是优先级,优先级最高的会被默认选中,还可以手动选择使用哪个alternative,选择的方法是

sudo update-alternativess --config cc

把cc换成c++,就可以选择c++了

最新文章

  1. vc++>>Connection using old (pre-4.1.1) authentication protocol refused (client option 'secure_auth' enable
  2. 关于String对象的比较
  3. Symfony电子商务
  4. ERP 及相关名词的含义
  5. Activity设置singleTask无法通过Intent获取值的问题
  6. Android面试题随笔1
  7. 基于MVC和Bootstrap的权限框架解决方案 二.添加增删改查按钮
  8. 在Eclipse中查看JDK源码的方法
  9. copy与mutableCopy的区别总结
  10. GC算法基础
  11. Linux下完全删除用户
  12. 使用Java及相关内容的目标
  13. [c/c++] programming之路(18)、动态分配内存malloc
  14. static关键字(修饰函数、局部变量、全局变量)
  15. list,set等集合遍历时,不能remove集合中的元素。需要new一个Object或者list,set,里面add需要删除的元素,等集合遍历完了进行remove(Object)或者removeAll(list/set)操作
  16. 【python】单下划线与双下划线的区别
  17. sql查询分析器中显示行号
  18. Android 7.1.1 又出幺蛾子了 —— 再谈 Android 上的 Wifi 连接
  19. [bzoj1017][JSOI2008]魔兽地图 DotR (Tree DP)【有待优化】
  20. jackson 不拼null节点的注解

热门文章

  1. 2721: [Violet 5]樱花
  2. [LeetCode] Same Tree 深度搜索
  3. poj 3254 Corn Fields 状压dp入门
  4. (二)docker的部署安装,配置,基础命令
  5. iOS 动画笔记 (二)
  6. Akka 和 μJavaActors入门
  7. ByteBuffer的介绍
  8. NULL的学问
  9. MariaDB半同步复制
  10. 【spring boot】7.静态资源和拦截器处理 以及继承WebMvcConfigurerAdapter类进行更多自定义配置