记一次macOS Mojave升级GCC
目录
- 前言
- 安装GCC
- 最后
前言
最近迷上了泛型编程, 看到了C++11, 14, 17的很多酷炫新特性. 之前也是在Linux下也跑了一些代码, 所以不觉得放到mac会有什么问题, 直到我看了mac默认的GCC版本, 4.2.1. C++11需要至少GCC4.7. 那这样肯定是不行的.
安装GCC
于是我呼唤homebrew
brew search gcc
作为一个编程多年, 趟过无数坑的渣渣, 我一般不会直接选最新, 于是先尝试
brew install gcc@4.9
. 很遗憾, 不行. 然后我brew install gcc@5
. 下载成功, 然后我打开我的.zshrc, 最后写入:
alias gcc='gcc-5' alias cc='gcc-5' alias g++='g++-5' alias c++='c++-5'
source更新下.zshrc. 找了一个cpp文件开始编译.
果不其然, 报错了. stackoverflow一下, 说是安装xcode-select, 很遗憾, 我已经装了. 然后说是,
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
, 很遗憾, 我安装失败.
于是我觉得从5跳到6. 重复刚才的操作:
然后编译, 成功运行.
最后
喜欢记得点赞, 有意见或者建议评论区见哦~
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
bio和nio
1. 用户态和内核态 操作系统为了限制程序的数据访问,来防止获取其他进程或外围设备数据,将CPU划分为用户态和内核态: 内核态(Kernel Mode):cpu可以访问内存的所有数据,包括外围设备,例如硬盘,网卡,cpu也可以将自己从一个程序切换到另一个程序。 用户态(User Mode):只能受限的访问内存,且不允许访问外围设备,占用cpu的能力被剥夺,cpu资源可以被其他程序获取。 一个完整的I/O操作分为两步: 用户层API调用; 内核层完成系统调用,实际调用read发起I/O请求,读取socket中的内容。 通常讲的“异步/同步”的是指用户层API调用;“阻塞/非阻塞”是指内核完成I/O调用的模式: nio是同步阻塞io,bio是同步非阻塞io,两者的区别在于是否阻塞,就是内核层io调用模式。并且阻塞是对于网络io来说的,对于磁盘io,总是视为非阻塞的。 同步是指API调用完成之前会一直等待;阻塞是指系统调用的时候,如果没有数据可供操作,那么线程就会阻塞,直到有有新的数据到来。例如当系统调用read从socket里读取数据,如果此时没有数据可读,线程阻塞,直到有数据可读。 2....
- 下一篇
Mybatis批量更新出现BadSqlGrammarException异常解决
1.xml写法 批量更新sql如下 <update id="updateDemo"> <foreach collection="demos" item="demo" open="" separator=";" close="" index="index"> update demo <set> <if test="null != demo.name">name = #{demo.name},</if> <if test="null != demo.age">age= #{demo.age}</if>
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果