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 StudioS32DS引用库文件3. 使用S32 Design StudioS32DS常见问题