Zephyr笔记1 - 在Windows下搭建开发环境
 2020.05.09    |      嵌入式学习    |     AilsonJack    |     暂无评论    |     1353 views
By: Ailson Jack
Date: 2020-05-09
个人博客: http://www.only2fire.com/
<p style="text-indent: 2em;">Zephyr版本号:<span style="color: rgb(255, 0, 0);">2.2.0</span></p><p style="text-indent: 2em;">开发板:<span style="color: rgb(255, 0, 0);">STM32F429IGT6(野火STM32F429挑战者 V2开发板)</span></p><p style="text-indent: 2em;">开发环境:<span style="color: rgb(255, 0, 0);">Windows 7 64位</span></p><p style="text-indent: 2em;">这里选择的是Zephyr当前最新的Release版本2.2.0进行说明的,我的电脑是Windows 7 64位系统,对于其他版本的Zephyr,配置步骤应该差不多。</p><p style="text-indent: 2em;">在后续的文章中,我将在野火的挑战者V2开发板运行Zephyer,并讲解使用Eclipse和JLink调试Zephyer的方法。</p><p style="text-indent: 2em;">为了防止公开链接被和谐,文章所需资源,请关注博主公众号,发送关键字 &quot;zephyr开发环境&quot; 进行获取。</p><p class="artical_littlestyle1">1、安装Chocolatey</p><p style="text-indent: 2em;">Chocolatey的安装可参考我的博文:<a href="http://www.only2fire.com/archives/116.html" target="_blank" title="Chocolatey离线安装方法">Chocolatey离线安装方法</a>,当然安装好了的就请忽略。<br/></p><p class="artical_littlestyle2">2、安装依赖</p><p style="text-indent: 2em;">使用Chocolatey安装指定工具时,如果电脑中已经存在了该工具,可选择不安装该工具。<br/></p><p>(1).以管理员身份打开命令提示符(按Windows键,在提示符下键入“cmd.exe”,然后右键单击结果并选择“以管理员身份运行”)。</p><p>(2).禁用全局确认,以避免必须确认单个程序的安装:</p><p><span style="color: rgb(0, 112, 192);">choco feature enable -n allowGlobalConfirmation</span></p><p>(3).安装Cmake:</p><p><span style="color: rgb(0, 112, 192);">choco install cmake --installargs &#39;ADD_CMAKE_TO_PATH=System&#39;</span></p><p style="text-indent: 2em;">安装完Cmake之后,记得将<span style="color: rgb(0, 112, 192);">C:\Program Files\CMake\bin</span>(Cmake的默认安装路径)添加进系统环境变量的path中。</p><p>(4).安装其余工具:</p><p><span style="color: rgb(0, 112, 192);">choco install git python ninja dtc-msys2 gperf</span></p><p>(5).安装west:</p><p style="text-indent: 2em;"><span style="color: rgb(255, 0, 0);">首先关闭之前的管理员命令提示符窗口,然后打开常规命令提示符窗口(不要有管理员权限的命令提示符窗口)</span>,接着执行命令:<span style="color: rgb(0, 112, 192);">pip3 install west</span>。</p><p class="artical_littlestyle3">3、获取Zephyr-2.2.0源代码</p><p style="text-indent: 2em;">Zephyr的多用途west工具简化了获取Zephyr源代码和Zephyr需要使用到的外部模块。使用west 将Zephyr的所有git存储库克隆到新目录zephyr_new中。</p><p style="text-indent: 2em;">选择一个存放Zephyr的目录,然后在此目录中打开命令提示符,执行下述命令:</p><p><span style="color: rgb(0, 112, 192);">west init zephyr_new</span></p><p><span style="color: rgb(0, 112, 192);">cd zephyr_new</span></p><p><span style="color: rgb(0, 112, 192);">west update</span></p><p style="text-indent: 2em;">如果执行完<span style="color: rgb(0, 112, 192);">west update</span>命令之后,出现类似错误:<span style="color: rgb(255, 0, 0);">ERROR: update failed for projects: civetweb, hal_stm32</span>,那么再执行一次<span style="color: rgb(0, 112, 192);">west update</span>命令应该就可以了:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.05.09/1589037178107506.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.05.09/1589037178107506.png&#39;)"/></p><p style="text-indent: 2em;">切换到2.2.0代码的分支:</p><p><span style="color: rgb(0, 112, 192);">cd zephyr</span></p><p><span style="color: rgb(0, 112, 192);">git checkout -b v2.2-branch origin/v2.2-branch</span></p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.05.09/1589037178909380.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.05.09/1589037178909380.png&#39;)"/></p><p class="artical_littlestyle4">4、安装所需的Python软件包</p><p style="text-indent: 2em;">我们下载的Zephyr源代码中包含一个requirements.txt文件,我们将使用该文件来安装Zephyr项目使用的其他Python工具:</p><p><span style="color: rgb(0, 112, 192);">pip3 install -r scripts\requirements.txt</span></p><p class="artical_littlestyle1">5、安装软件开发工具链</p><p style="text-indent: 2em;">工具链包括用于构建Zephyr应用程序的必要工具,包括:编译器,汇编器,链接器及其依赖性。由于这里将使用STM32F429IGT6,因此下载安装ARM工具链即可。</p><p style="text-indent: 2em;">在<a href="https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm" target="_blank" title="https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm">https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm</a>下载编译工具链,或者使用我这里提供的下载好的编译工具链,我使用的是2019q4。解压&quot;<span style="color: rgb(0, 112, 192);">gcc-arm-none-eabi-9-2019-q4-major-win32.zip</span>&quot;,重命名为<span style="color: rgb(0, 112, 192);">2019q4</span>,我这里的存放路径为:<span style="color: rgb(0, 112, 192);">F:\SoftWare\linux_enviroment\gnu_tools_arm_embed\2019q4</span>。</p><p style="text-indent: 2em;">环境变量设置:</p><p style="text-indent: 2em;">(1).在系统变量下面点击新建,变量名:<span style="color: rgb(0, 112, 192);">ZEPHYR_TOOLCHAIN_VARIANT</span>,变量值:<span style="color: rgb(0, 112, 192);">gnuarmemb</span>。</p><p style="text-indent: 2em;">(2).在系统变量下面点击新建,变量名:<span style="color: rgb(0, 112, 192);">GNUARMEMB_TOOLCHAIN_PATH</span>,变量值:<span style="color: rgb(0, 112, 192);">F:\SoftWare\linux_enviroment\gnu_tools_arm_embed\2019q4</span>。</p><p style="text-indent: 2em;">(3).将编译工具链的路径(<span style="color: rgb(0, 112, 192);">F:\SoftWare\linux_enviroment\gnu_tools_arm_embed\2019q4\bin</span>)添加到系统环境变量的Path中。</p><p style="text-indent: 2em;">添加完上述环境变量之后,记得保存。</p><p class="artical_littlestyle2">6、编译HelloWorld应用</p><p style="text-indent: 2em;">确定命令提示符的路径在Zephyr2.2.0源代码目录中,执行下述命令:</p><p><span style="color: rgb(0, 112, 192);">zephyr-env.cmd</span></p><p><span style="color: rgb(0, 112, 192);">west build -p auto -b stm32f429i_disc1 samples/hello_world</span></p><p style="text-indent: 2em;">编译成功的输出信息如下:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2020.05.09/1589037178369971.png" onclick="preview_image(&#39;/uploads/AilsonJack/2020.05.09/1589037178369971.png&#39;)"/></p><p style="text-indent: 2em;">当然了,当前编译出的二进制文件并不能在野火挑战者V2上运行,后续的文章会讲解如何修改代码使Zephyr能够在野火挑战者V2运行。敬请关注。</p><p style="text-indent: 2em;">如果这篇文章对你有帮助,记得点赞和关注博主就行了^_^。</p>
欢迎关注博主的公众号呀,精彩内容随时掌握:
热情邀请仔细浏览下博客中的广告,万一有对自己有用或感兴趣的呢。◕ᴗ◕。。
如果这篇文章对你有帮助,记得点赞和关注博主就行了^_^,当然了能够赞赏博主,那就非常感谢啦!
注: 转载请注明出处,谢谢!^_^
暂无评论,要不要来个沙发
发表评论

 
Copyright © 2015~2023  说好一起走   保留所有权利   |  百度统计  蜀ICP备15004292号