OS X上安装Homebrew和GCC的图文攻略

2016年08月31日 11:21:27 白马负金羁 阅读数:11380 标签: OS XGCCHomebrew 更多

个人分类: 应用技巧
 
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/baimafujinji/article/details/52376388

GCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器。它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分。GCC原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统采纳为标准的编译器,关于GCC的更多信息还可以访问它的网站 http://gcc.gnu.org/。

欢迎关注白马负金羁的博客 http://blog.csdn.net/baimafujinji,为保证公式、图表得以正确显示,强烈建议你从该地址上查看原版博文。本博客主要关注方向包括:数字图像处理、算法设计与分析、数据结构、机器学习、数据挖掘、统计分析方法、自然语言处理。

如果你在OS X上安装了Xcode,那么你是可以在Terminal下使用gcc命令来编译程序的,这似乎表明你已经安装了GCC,但事实并非如此!其实控制台只是把编译任务映射到Apple 的 clang。所以当你使用gcc命令时,注意我们没有给出要编译的文件名,所以系统报了一个错误,而错误提示写的是 clang error,可见系统确实调用的是 clang 来执行编译任务。

而 clang 对于很多GCC下面的组件并不支持。事实上,因为Apple为了发展自己的产品,在Xcode 7上就已经不再提供用于并行编程的 OpenMP 了(我们会在后续的文章里再来介绍在OS X下利用GCC进行基于OpenMP的并行程序开发的基本方法)。

下面我们就来详细演示在OS X系统上安装配置GCC的基本步骤,下面的测试都是在OS X 10.11 (El Capitan)系统上完成的,但是我们相信这些方法对于其他版本的OS X系统也是可行的。

作为准备工作,你需要确保你OS X系统上已经成功安装了 XCode Command Line Tools,有时在安装Xcode时,命令行工具会被一同安装,但有时并不会(这很大程度取决于你所安装的XCode的版本)。Anyway,你可以使用下面的命令来安装 XCode Command Line Tools(因为这并不是本文的重点,如果对于这一步你有所困惑,请参阅其他相关资料)

> xcode-select --install

如果你的计算机上已经安装了XCode Command Line Tools,那么输入上述命令之后,你会得到的提示将会是像下面这样的:

接下来,你需要安装Homebrew,Homebrew是OS X下的一个套件管理器,用于下载、安装、维护各种软件包及其依赖包,类似Red hat下的yum,Ubuntu下的apt-get,或者你也可以理解为Python的pip工具。关于Homebrew的更多内容,你还可以范围它的主页 http://brew.sh/index_zh-cn.html。

Homebrew的安装方法非常简单,只需在Terminal下输入下列命令即可:

> ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装过程可能需要几分钟时间,你所看到的安装过程中的控制台窗口应该是像下面这样的:

中间过程中会有一步提示你按下RETURN(Mac下的回车键)以继续,然后系统还会提示你输入管理员密码(注意下图中红线标识的部分):

当出现下面这个界面时表示Homebrew已经被成功地安装了!

下面就可以正式进入GCC的安装了。首先在控制台上输入

> brew search gcc5

这是为了得到一个指定版本的GCC的安装包,我所得的结果是homebrew/versions/gcc5,所以执行安装的命令,应该采用下面这个形式:

> brew install homebrew/versions/gcc5

执行上述命令的界面如下,表示安装程序已经启动:

安装过程会持续几分钟,当出现下面这个界面时表示GCC已经被成功安装了。这时你需要得到一个你所安装的编译器的准确名字,因为你在执行编译任务时需要使用它来作为一个命令,注意:为此,你需要在控制台上输入:

$ g++

其中$是命令提示符,注意输入完以上指令后,你需要按“两次”tab键,你会看到类似下图中之结果。然后你也可以输入:

$ g++-5 --version

来获取所安装的GCC的一些版本信息。

如此一来,你就已经成功地在OS X系统上安装了GCC编译器了,在控制台上用gcc命令并配合makefile命令的使用就可以进行编程开发了。

参考文献:

http://mathcancer.blogspot.com.au/2016/01/PrepOSXForCoding-Homebrew.html

Mac 安装GCC的更多相关文章

  1. mac安装gcc

    xcode-select --install安装命令行工具 安装完毕后,可能报错 xcrun: error: active developer path ("/Applications/Xc ...

  2. MAC上安装GCC失败

    问题 在用brew安装GCC时, 报了如下错误. ➜ ~ brew install gcc ==> Installing dependencies for gcc: isl, mpfr and ...

  3. WINDOWS下如何安装GCC(转载http://nirvana.cublog.cn;作者:北斗星君(黄庠魁))

    第一章 在视窗操作系统下的GCC 第一节 GCC家族概览 GCC 是一个原本用于 Unix-like 系统下编程的编译器.不过,现在 GCC 也有了许多 Win32 下的移植版本.所以,也许对于许多 ...

  4. Python MySQLdb Mac安装遇到的问题

    Mac 下使用Python 连接Mysql 数据库,使用到模块MySQLdb,各种问题都出现,搜集整理下,最后发现最关键的还是Mac 下的Python 版本问题 前置条件: 1. 已经安装mysql ...

  5. Fedora 安装gcc gcc-c++

    Fedora本身没有自带gcc 和 g++编译器,所以需要我们自己去安装,步骤如下: 1.切换到root用户(或者跳过这个步骤,直接在下面命令前面加上 sudo) su root 2.安装gcc yu ...

  6. Linux(RHEL6.0)下安装GCC

    查看系统版本 [root@CP-RHEL proc]# cat /etc/issue Red Hat Enterprise Linux Server release 6.0 (Santiago) Ke ...

  7. Red Hat Enterprise Linux Server 6.5安装GCC 4.9.2

    现在很多程序员都应用GCC,怎样才能更好的应用GCC.目前,GCC可以用来编译C/C++.FORTRAN.JAVA.OBJC.ADA等语言的程序,可根据需要选择安装支持的语言.本文以在RedHat L ...

  8. [Centos]升级安装GCC

    摘要 在尝试运行asp.net core站点的时候,发现了gcc包版本太低,造成一些错误.没办法只能升级gcc了. 升级 最新包:http://gcc.parentingamerica.com/rel ...

  9. mac安装tensorflow报错

    问题:mac安装tensorflow过程中,爆出oserror:permission denied 解决方案:关闭mac的sip,然后sudo安装 关闭sip的方法:重启mac,按住command+R ...

随机推荐

  1. JavaScript异步编程__“回调地狱”的一些解决方案

    异步编程在JavaScript中非常重要.过多的异步编程也带了回调嵌套的问题,本文会提供一些解决“回调地狱”的方法. setTimeout(function () { console.log('延时触 ...

  2. Linux function: unshare

    When a new process is created with the clone() system call, a set of flags is provided which tells t ...

  3. C# winform javascript 互调用

    1.准备环境 vs2010 2. 项目结构 index.htm 为需要显示的web页面 其中需要操作提供的方式的C# 调用的javascript 方法 以及进行测试javascript 调用C# 方法 ...

  4. PCB 设计文件中哪些可以不做成元件

    PCB 文件中哪些可以不做成元件 在 PCB 设计时有些元件为了快速,实际并不需要做成元件. 因为做成元件会浪费时间,并且生产时也没有实际的元件. 如下(持续更新): PCB 与 PCB 之前的连接人 ...

  5. php变量的实现

    1.php变量的实现 变量名 zval ,变量值 zend_value,php7的变量内存管理的引用计数 在zend_value结构上,变量的操作也都是zend_value实现的. //zend_ty ...

  6. 【ZZ】各类程序开发语言概述 | 菜鸟教程

    http://www.runoob.com/w3cnote/programming-intro.html 各类程序开发语言概述, 点击查看大图:

  7. 灵活运用SMART原则梳理目标

    1:立刻行动 执行力是老生常谈了,提高执行力不拖延,源自于对目标的充分理解和超出常人的坚持. 如何深刻理解目标?一方面要有基础的知识.能力积累,另一方面要灵活运用SMART原则从不同维度梳理目标. 2 ...

  8. Go语言面组合式向对象编程基础总结

    转自:http://blog.csdn.net/yue7603835/article/details/44282823 Go语言的面向对象编程简单而干净,通过非侵入式接口模型,否定了C/C++ Jav ...

  9. java的文件上传和下载 抄袭别人的.在底部有说明.

    =======后续 这里采用的是输出流的方式,我电脑装的是windows系统,测试没有问题,但是当把项目放到Linux系统上跑时,就会出现保存位置错误的情况, 指定的路径就会被当做文件名的一部分保存了 ...

  10. Spring Boot使用@Scheduled定时器任务

      摘要: Spring Boot之使用@Scheduled定时器任务 假设我们已经搭建好了一个基于Spring Boot项目,首先我们要在Application中设置启用定时任务功能@EnableS ...