news 2026/4/5 2:47:17

脚本编译中怎么将/application/aima或/application/demo目录编译进去的

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
脚本编译中怎么将/application/aima或/application/demo目录编译进去的

我先定位顶层 CMake 里选择 aima/demo 的那段逻辑(含行号),然后把它和 build_yaxon.bat 传参、Makefile 调用 cmake 的环境变量传递关系串起来解释清楚。

Read multiple configuration files
把 aima 或 demo 编进最终固件(准确说是编进 userspace 的 customer_app.elf)的入口在顶层 CMake:看 CMakeLists.txt:153-164。

1) 触发条件:必须启用 PROJECT_YAXON

只有 if(PROJECT_YAXON) 成立时,才会走“编译雅迅APP”这段逻辑(并最终链接进可执行文件):CMakeLists.txt:152-164
这个 PROJECT_YAXON 一般来自 .config(Kconfig)转成的 CMake 选项(Makefile 调 cmake 时会把 .config 里的开关转成一堆 -Dxxx=ON/OFF 传进去)。
2) 选择 aima 还是 demo:靠环境变量 build_option
在 CMakeLists.txt:154-159:

如果环境变量 build_option 非空:
add_subdirectory(./application/$ENV{build_option} YXAPP)
也就是你设置 build_option=demo 时,会进入 demo,读取它的 CMakeLists.txt,生成一个静态库目标 YXAPP(例如 CMakeLists.txt 里 add_library(YXAPP STATIC ...))。
如果环境变量 build_option 为空:
默认 add_subdirectory(./application/aima YXAPP)
对应 CMakeLists.txt 里同样定义 YXAPP 静态库。
3) “编进固件”具体是怎么完成的:链接 YXAPP 到 userspace 可执行文件
紧接着它做了链接:
target_link_libraries(${SC_USERSPACE_NAME} PRI

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/5 0:24:34

国产AI真的很不行?四个维度告诉你真相

国产AI真的很不行?四个维度告诉你真相 本文共 2101 字,阅读预计需要 3 分钟。 Hi,你好,我是Carl,一个本科进大厂做了2年AI研发后,裸辞的AI创业者。 国产AI真的很不堪吗? 我看到很多人非常戏谑…

作者头像 李华
网站建设 2026/4/2 23:21:46

【人工智能学习-AI-MIT公开课第 17.-学习:boosting 算法】

人工智能学习-AI-MIT公开课第 17.-学习:boosting 算法1-前言2-课程链接3-具体内容解释说明一、Boosting 在讲什么(一句话)二、为什么要讲 Boosting?(动机)三、Boosting 的基本流程(入试超爱&…

作者头像 李华
网站建设 2026/3/29 21:21:07

C语言的性能优化实践全解析:从编译器自动优化机制到程序员手动调优思维与工程经验总结

在众多编程语言中,C语言一直以“高性能、强控制力”著称。但性能并不是自动获得的,它来自于对算法、内存、编译器以及硬件行为的综合理解。真正高效的C程序,往往不是“语法技巧”的堆砌,而是从设计层到实现层都围绕性能目标进行权…

作者头像 李华
网站建设 2026/3/31 7:37:15

二十三种设计模式(二十三)--责任链模式

责任链模式(Chain of Responsibility) 责任链模式处理同样的任务但是分多个等级去做不同的应对的问题 只要出现多个对象处理的是同一个请求, 并且这多个对象是有顺序有条件的去应对请求的, 就要使用责任链模式. 假设我们有一支军队, 我军按照不同的规模编排队伍中人数的大小, 分…

作者头像 李华
网站建设 2026/3/28 20:00:06

Thinkphp的农贸市场摊位 夜市摊位租赁系统设计与实现

目录摘要关键词项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理摘要 农贸市场与夜市摊位租赁系统基于ThinkPHP框架开发,旨在解决传统摊位管理中效率低、信息不透明等问题。系统采用B/S架构,结合MySQL数据库,实现…

作者头像 李华
网站建设 2026/4/3 10:23:45

Thinkphp的基于协同过滤算法的动漫推荐系统

目录基于协同过滤算法的动漫推荐系统(ThinkPHP实现)项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理基于协同过滤算法的动漫推荐系统(ThinkPHP实现) 该系统采用ThinkPHP框架结合协同过滤算法&#x…

作者头像 李华