RTOS独立编译步骤说明
如果我们有不依赖于Alkaid编译体系,独立编译RTOS的需求,此文将指导如何进行独立编译RTOS,包括必要环境配置和编译步骤。
REVISION HISTORY¶
Revision No. | Description |
Date |
---|---|---|
1.0 | 08/14/2024 |
1. 编译步骤¶
1.1 编译current.configs¶
在release SDK完成后,进入project目录,选择想要编译的defconfig,并输入make <defconfig>
进行编译,将生成的configs/current.configs复制到rtos/proj目录下。
1.2 编译rtos¶
在rtos/proj/目录下输入make <defconfig>
,make menuconfig
,选择路径: System Option -> Path Control Options:
以上选项的意思是:
- SensorDriver Path: 指定
SensorDriver
的目录路径 - Release Path: 指定
release
的目录路径 - sdk Path: 在有MI模块开源的情况下需要设置,指定sdk目录路径
确认路径无误后,在rtos/proj目录下输入make -j16
进行编译。
2. 常见问题以及解决方法¶
问题1: 编译时,出现no input files
错误:
解决:检查build/<defcofnig>/out
目录下的软链接文件是否正确指向,可能是menuconfig中设置的路径不正确。
问题2: 在rtos/proj目录下make <defconfig>
时,出现error:
解决:错误信息说明了当前编译的defconfig与current.configs中指定的不相同,needed <defconfig>
中说明了current.configs中指定的配置,需要检查current.configs中是否为正确的配置,如果不正确,则重新在project目录中生成current.configs后,复制configs/current.configs到rtos/proj下。
问题3: 编译出现md5错误:
解决:
- 如果是在project目录下进行编译,则说明使用的是project的current.configs,而出现md5的对比是因为rtos/proj目录下存在current.configs文件,可以将rtos/proj/current.configs删除。
- 如果是在rtos/proj目录下进行编译,则可能是因为在project目录中修改了config,但没有复制到rtos/proj目录下。重新将project/configs/current.configs复制到rtos/proj即可。
3. 注意事项¶
- 以上选项设置的目录路径可设置为绝对路径和相对路径;
- 如果在project目录中修改过涉及rtos的选项,比如DRAM Layout会影响rtos的defconfig文件,则需要将新生成的current.configs重新复制到rtos/proj目录下