本文原创于http://www.cnblogs.com/humaoxiao,非法转载者请自重!

    在上一篇文章中,我们在OSX中编译了ST-Link2调试工具,并且简单的对其功能进行了测试。在这篇文章中,我们安装交叉编译工具。

    提前声明,当我提到“用户文件夹”时,指的就是你的用户文件夹,拿我自己举例子,我的用户名是apple,我的用户文件夹绝对地址就是/Users/apple。如果你的用户名是pear,那你的用户文件夹就是/Users/pear。非常简单,在终端,我们可以直接输入“cd”命令来跳转到自己的用户文件夹。以下所有例子都是以我的用户文件夹做例子的,切记在使用时更换成你自己的用户文件夹。KEEP THIS IN MIND!

(二)安装STM32F4交叉编译器

(1)打开网站 https://launchpad.net/gcc-arm-embedded/+download

    在这里,我们下载第一个 gcc-arm-none-eabi-4_8-2013q4-20131218-mac.tar.bz2即可,这是已经编译好的交叉编译工具,免去了我们的编译之苦(随后的文章中会给出编译过程,敬请期待),如果你愿意多尝试一下的话,也可以下载src源码包自己尝试编译。

    (2)将压缩包解压到你的用户文件夹(~/)中

    文件夹名字可能跟我现在的名字不同,不要紧,因为这些东西保不准啥时候就更新了,我们把解包出来的文件夹统一命名为gcc-arm-none-eabi,这样以后就方便了

    我们可以看一下gcc-arm-none-eabi的文件夹结构:

    在这里,最重要的就是gcc-arm-none-eabi/bin文件夹下的这些编译和调试工具了,最最常用的当然就是arm-none-eabi-gcc啦!

(3)添加交叉编译器的用户环境变量

    那么,我们为什么要添加用户环境变量呢?因为现在我们只是把编译器放到了自己的用户文件夹里,但是系统要调用的时候,根本找不到它们在哪。我们很火大,为什么系统你就不能自己找呢?系统也很火大,要是我自己什么都能找到,那你硬盘里的那些Mao Pian怎么办!所以僵持之下,我们还是手动给这些编译器添加环境变量吧:)

    OK,要想找到我们用户环境变量,很简单,只需在终端输入

cd ~/

ls -a

    出来一大堆东西,我们找到文件.profile,这就是我们要找的东西,如果没有的话也不用着急,手动创建一个即可。

    用任何编辑器打开它均可,我使用vim打开它:

vim .profile

打开后不管文件是否为空,在文件的最后添加两行:

export PATH=/Users/apple/gcc-arm-none-eabi/bin:$PATH

export PATH=/Users/apple/stlink.git:$PATH

    在这里,需要把上面的apple换成你自己的用户名,如果不明白请看本文开头部分,一定不要搞错了。

    非常简单吧,第一行是把我们交叉编译器所在文件夹的绝对地址添加到了环境变量中。第二行是顺便把我们上一篇中使用的ST-Link2工具所在的文件夹也添加到环境变量中。

    保存退出,重新启动终端使设置生效。

(4)验证配置是否正确

    在终端直接输入echo $PATH

    我这边打印出来的信息是

    /Users/apple/stlink.git:/Users/apple/gcc-arm-none-    eabi/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

    他们以冒号分割,大家可以看到前两个路径是我们刚刚添加进去的,说明环境变量添加成功!

    挺有意思的吧?所有的东西都在我们的控制之下,这种感觉好极了:)

 

在下一篇中,我们将编译一个小例子,使用st-flash工具烧写bin文件,实现点亮一个led的功能。

------------------------------------

大家可以+关注我的博客,以便得到最新的文章。

------------------------------------

打字不易,转载请注明出处(http://www.cnblogs.com/humaoxiao/p/3576732.html),谢谢。

在Mac OS X中搭建STM32开发环境(2)的更多相关文章

  1. 在Mac OS X中搭建STM32开发环境(3)

       本文原创于http://www.cnblogs.com/humaoxiao,非法转载者请自重!     在上两篇文章中,我们先后编译和安装了ST-Link2和交叉编译工具,在大家确认安装成功以后 ...

  2. 在Mac OS X中搭建STM32开发环境(1)

    本文原创于http://www.cnblogs.com/humaoxiao,非法转载者请自重! 本文方法必须好用!绝不坑爹!看了N多英文资料才搞明白的,适用于STM32F4DISCOVERY评估板,带 ...

  3. Mac OS X下搭建Android开发环境(包括SDK和NDK)

    资源准备:  JDK Eclipse Android SDK Android NDK ADT CDT ANT 搭建Android SDK开发环境: 1.JDK安装,要求版本>1.5, Mac O ...

  4. 如何在Mac OS系统下搭建Java开发环境 配置Java环境变量

    1. 打开终端   在finder里面搜索(这台MAC)查找终端   2. 在cdlouiedeAir:~ cdlouie$(cdlouie是我的电脑用户名) 后面输入sudo vim /etc/pr ...

  5. 在Mac OS X中使用VIM开发STM32(2)

    本文原创于http://www.cnblogs.com/humaoxiao,非法转载者请自重! 在我先前的博文⎣在Mac OS X中使用VIM开发STM32(1)⎤中,我们安装完成了MACVIM,这一 ...

  6. 在Mac OS X中使用VIM开发STM32(1)

       本文原创于http://www.cnblogs.com/humaoxiao,非法转载者请自重!     在我先前的博文⎣在Mac OS X中搭建STM32开发环境⎤中,我们在Mac中DIY出了最 ...

  7. VS Code 搭建stm32开发环境

    MCU免费开发环境 一般芯片厂家会提供各种开发IDE方案,通常其中就包括其自家的集成IDE,如: 意法半导体 STM32CubeIDE NXP Codewarrior TI CCS 另外也可以用ecl ...

  8. mac 下 用 glfw3 搭建opengl开发环境

    mac 下 用 glfw3 搭建opengl开发环境 下载编译 glfw3 Build Setting 里面, Library Search Paths -> 设置好编译 glfw 库的路径 H ...

  9. 在 Ubuntu 13.10 中搭建Java开发环境 - 懒人版

    本文记录我在Ubuntu 13.10中搭建Java开发环境. 本文环境: Ubuntu 13.10 x64运行在Win7下的VMware Workstation 10中. 1. 安装JDK与JRE s ...

随机推荐

  1. linux makefile: c++ 编程_基础入门_如何开始?

    学习android 终究还是需要研究一下其底层框架,所以,学习c++很有必要. 这篇博客,算是linux(ubuntu) 下学习 c++ 的一个入门. 刚开始学习编程语言的时候,最好还是使用命令行操作 ...

  2. SUSE的SSHD配置及设置防火墙

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  3. 【转】CppUnit使用简介

    以下内容来自:http://www.cnblogs.com/wishma/archive/2008/08/01/1258370.html 1. 简介 CppUnit 是个基于 LGPL 的开源项目,最 ...

  4. web工作方式,浏览网页,打开浏览器,输入网址按下回车键,然后会显示出内容,这个过程是怎样的呢?

    以下内容摘自<Go Web编程>,介绍的通俗易懂. 我们平时浏览网页的时候,会打开浏览器,输入网址后按下回车键,然后就会显示出你想要浏览的内容.在这个看似简单的用户行为背后,到底隐藏了些什 ...

  5. android学习日记16--GridView(网格视图)

    一.GridView 1.简述 GridView按照行列来显示图片或文本的一种视图,排列其实有点类似TableLayout布局, 不过和TableLayout还是差别很大的,倒比较像二维的ListVi ...

  6. Java基础知识强化100:JVM 内存模型

    一. JVM内存模型总体架构图:  方法区和堆由所有线程共享,其他区域都是线程私有的 二. JVM内存模型的结构分析: 1. 类装载器(classLoader) 类装载器,它是在java虚拟机中用途是 ...

  7. 包括后台的Android美食APP项目开源代码

    项目简介 小食光定位为一款集美食,社交,LBS服务于一体的美食推荐APP.为你发现周边美食的同时提供一个吃货分享的平台. APP截图     功能模块 美食推荐 :提供基础的美食信息查询: 商家推荐  ...

  8. truncate和 delete的区别:

    1.一个表要删除全部数据如何实现:①delete,②truncate EG:删除a表中的所有数据: CREATE TABLE `b` ( `id` int(11) NOT NULL AUTO_INCR ...

  9. 利用JS_SDK实现QQ第三方登录

    前言 现如今,第三方登录已成为大部分网站必备的一项基础技能,引入时髦的第三方登录不仅能帮你吸引更多的用户,也让你的网站可以充分利用其他大型网站的用户资源.本次教程将让你的网站最快捷便利地引入QQ登录. ...

  10. Python 基础【第八篇】变量

    1.变量定义: 给数据进行命名,数据的名字就叫做变量 2.变量格式: [变量名] = [值] 注:变量名命名需要满足下面两条准则 准则一:标示符开头不能为数字.不能包含空格.特殊字符准则二:标示符不能 ...