zoukankan      html  css  js  c++  java
  • 在Mac OS X中搭建STM32开发环境(2)

       本文原创于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

    NewImage

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

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

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

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

    NewImage

        在这里,最重要的就是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),谢谢。

  • 相关阅读:
    新线程 handler
    解决获取View的width和Height为0的4种方法
    回调深入理解 同步回调 以android中View.OnClickListener为列
    回调函数
    android:layout_weight
    studio rendering problems
    android:exported属性
    Codeforces 1264C/1265E Beautiful Mirrors with queries (概率期望、DP)
    Codeforces 1254C/1255F Point Ordering (交互题)
    Codeforces 576D Flights for Regular Customers (图论、矩阵乘法、Bitset)
  • 原文地址:https://www.cnblogs.com/humaoxiao/p/3576868.html
Copyright © 2011-2022 走看看