news 2026/5/1 17:29:58

S32 Design Studio(S32DS)工程使用共享资源

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
S32 Design Studio(S32DS)工程使用共享资源

有时需要在多个工程中使用共享资源。比如代码、链接文件(.ld)或链接库。使用共享资源可以降低维护工作量,避免版本不一致的问题。

1. 使用共享文件夹中的代码

在工程中使用共享文件夹中的代码。 比如有一个代码文件夹SDK,与项目工程在同一级目录,共享使用。

1. 1 在工程中添加文件夹

右键点击工程名,在弹出菜单中点击

New –> Folder,

弹出对话框,点击:Advanceed –> Link to alternate location。

添写文件夹路径,可以使用绝对路径,也可以使用相对路径。使用相对路径便于维护。

在下面输入框中添写:

${PARENT-1-PROJECT_LOC}/SDK

点击Finish按钮。

解析

美元符号 $ 加上大括号{}表示变量;

PARENT-1-PROJECT_LOC 表示目标文件夹在工程的上一级目录。数字1代表上1级目录,可以根据需求修改。

上2级目录为PARENT-2-PROJECT_LOC。PROJECT_LOC表示工程目录。

1.2 添加到编译配置

右键点击新添加的文件夹,在弹出菜单中点击

Build path -> Add to -> Debug或Release

这时文件夹的图标会自动去掉斜杠。

1.3 添加编译器搜索路径

右键点击工程名,在弹出菜单中选择Properties

在左侧树状框中点击:

C/C++ Build -> Settings,点击 Tool Settings 选项卡。

跟据不同编译器版本,在中间树状框中点击

Diab C Compiler -> Preprocessor 或 Standard S32DS C Compiler -> Includes

在Include paths (-l)框中添加文件夹路径,如:

"${workspace_loc:/${ProjName}/SDK}"

解析

因为已经把SDK文件夹添加到工程中,可以使用本工程的路径。${ProjName} 代表工程名。

2. 使用共享链接文件

链接文件(Linker File)是用于指导链接器如何将编译后的代码和数据段分配到目标芯片的Flash和SRAM中的脚本文件,通常以 .ld 为扩展名 。

右键点击工程名,在弹出菜单中选择Properties

在左侧树状框中点击:

C/C++ Build -> Settings,

点击 Tool Settings 选项卡,

点击Standard S32DS C Linker -> General

在右侧 Script files 框中添加链接文件。

使用相对路径,便于维护。如:

"${ProjDirPath}/../link/56xx_flash.ld"

解析

${ProjDirPath} 代表工程路径,可以使用双点 .. 代表上级目录。

3. 使用共享库文件

见参考2。

4. 使用共享生成文件

生成文件包括.map,.elf等文件。

4.1 把生成文件放在共享文件夹

右键点击工程名,在弹出菜单中选择Properties

在左侧树状框中点击:

C/C++ Build -> Settings,点击 Build Artifact 选项卡。

在 Artifact name 输入框填写生成文件的名称(不包括后缀)。

在 Output prefix 输入框填写共享文件夹路径。注意:该文件夹必须存在,以 / 结尾。

4.2 把共享文件夹映射到工程

参照1.1节。把共享文件夹映射到工程后,方便查看编译结果。

5. 使用共享编译器

需要添加共享编译器文件夹的路径。

右键点击工程名,在弹出菜单中选择Properties

在左侧树状框中点击:

C/C++ Build -> Environment,

在 Environment variables to set 框中,修改PATH变量。把编译器文件夹的路径添加到PATH变量中。

参考

1. S32 Design Studio 修改代码相对路径的方法
2. S32 Design Studio(S32DS)引用库文件

3. 使用S32 Design Studio(S32DS)常见问题

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

Windows安装Milvus向量数据库(Docker环境上运行,不需要科学上网)

Milvus Milvus是一款开源的向量数据库,具有高度的灵活性、稳定可靠性以及高速查询等特点。它支持针对TB级向量的增删改操作和近实时查询,适用于大规模向量数据的存储和检索。 Milvus的官网:https://milvus.io Github上Milvus的链接&#xf…

作者头像 李华
网站建设 2026/4/30 7:37:48

Axure疑难杂症:订单管理页的Axure高阶技巧:动态数据绑定与条件逻辑优化

案例 亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢!如有帮助请订阅专栏! Axure产品经理精品视频课已登录CSDN可点击学习https://edu.csdn.net/course/detail/40420 案例视频: 中继器嵌套、动态面板嵌套、订单页面 案例展示: 订单管理需求分析: 页面组成应包…

作者头像 李华
网站建设 2026/4/11 3:57:06

TitanHide安全部署指南:虚拟机环境下的最佳实践

TitanHide安全部署指南:虚拟机环境下的最佳实践 【免费下载链接】TitanHide Hiding kernel-driver for x86/x64. 项目地址: https://gitcode.com/gh_mirrors/ti/TitanHide TitanHide是一款内核级驱动程序,旨在帮助用户隐藏调试器进程,…

作者头像 李华
网站建设 2026/4/30 7:38:41

Scully完整配置教程:从零开始搭建高性能Angular网站

Scully完整配置教程:从零开始搭建高性能Angular网站 【免费下载链接】scully The Static Site Generator for Angular apps 项目地址: https://gitcode.com/gh_mirrors/sc/scully Scully是一款专为Angular应用设计的静态网站生成器,它能够将Angu…

作者头像 李华
网站建设 2026/4/30 8:06:20

PlugY终极指南:解锁暗黑破坏神2离线模式全部潜力

PlugY终极指南:解锁暗黑破坏神2离线模式全部潜力 作为暗黑破坏神2最受欢迎的离线增强工具,PlugY插件通过非侵入式设计,为单机玩家带来了革命性的游戏体验提升。这款生存工具包在保留原版游戏精髓的同时,解决了长期困扰玩家的诸多…

作者头像 李华