1、编译环境
- wsl虚拟Linux环境工作环境
- Python 3.8.10
- arm-none-eabi-gcc (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release)
- virtualenv 20.8.1
2、编译过程记录
第1步,在电脑中创建一个工作目录,当前创建的目录如下:
D:\daplink_workspace
工作目录可以创建在操作系统的任何盘符或者任何目录下,可根据自己的喜好进行设置。
第2步,进入命令行界面,启动wsl虚拟机。
如图2-1所示,进入命令行界面。
输入命令:
d:
cd daplink_workspace
如图2-2所示,进入已经设置好的工作目录。
如图2-3,输入wsl命令启动Linux虚拟机环境。
第3步,克隆daplink代码库。
输入命令:
git clone https://hub.fastgit.org/ARMmbed/DAPLink.git
如图3-1所示,等待代码下载结束。
如图3-2所示,代码下载结束。
第4步,切换到开发分支。(备注: 不做此切换,后续编译可能会出问题)
输入命令:
cd DAPLink
git checkout develop
如图4-1所示,已经切换至开发分支。
第5步,设置项目的虚拟运行环境。
输入命令:
virtualenv venv
如图5-1所示,虚拟环境已经安装完成。
第6步,激活虚拟环境。
输入命令:
source venv/bin/activate
或
source venv/Scripts/activate
备注:上述二个命令,到底使用哪一个,跟系统中安装的virtualenv虚拟环境版本有关系,请正确选择。
如图6-1,虚拟环境被激活。
第7步,安装支持软件包。
输入命令:
pip install -r requirements.txt
如图7-1所示,支持软件包安装完成。
第8步,编译软件工程。
查找需要编译的软件工程,打开DAPLink目录下的projects.yaml文件,查找stm32f103xb相关的软件工程。
如图8-1所示,已经找到需要编译的软件工程名称。
输入第一种编译方式命令:
python tools/progen_compile.py -t make_gcc_arm --clean -v --parallel stm32f103xb_bl
如图8-2所示,软件工程正在编译中。
如图8-3所示,软件工程编译完成,未发现错误信息。
输入第二种编译方式命令:
progen generate -t make_gcc_arm -p stm32f103xb_bl -b
如图8-4所示,软件工程在编译中。
如图8-5所示,编译完成,progen.tools.gccarm INFO提示信息没有错误,但后面的脚本运行结果似乎提示有超时问题。但查看目录DAPLink\projectfiles\make_gcc_arm\stm32f103xb_bl\build,发现所需要的目标文件都已经生成,暂且认为是脚本存在一些小BUG,在此就不做深究了。
输入第3种编译方式命令:
progen generate -t cmake_gcc_arm -o generator=make -p stm32f103xb_bl -b
如图8-6所示,软件工程在编译中。
如图8-7所示,编译结果显示同第二种编译方式,关于脚本超时告警请忽略,如果有兴趣的话请自行debug。