S32 设计工作室(S32DS)支持 Green Hills Software(GHS)编译器的 Eclipse 插件,可通过 GHS 编译器来编译 S32DS 项目。本文档介绍如何安装该插件以及在新建项目向导中启用 GHS。
GHS Eclipse 插件成功安装后,若器件和 SDK 支持 GHS 编译器,你就可以在 S32DS Eclipse 环境下使用 GHS 编译器创建并构建 S32DS 项目。
安装说明
要使用 GHS 编译器,您需要确保 GHS 编译器已安装并拥有有效的许可证。请按照以下步骤安装 Eclipse 插件:
在弹出的 “Install”(安装)对话框中,点击 “Add”(添加)按钮。在弹出的 “Add Repository”(添加仓库)对话框中,点击 “Local”(本地)。导航至您的 MULTI 编译器安装目录下的 eclipse 文件夹(例如:C:\ghs\comp_202114\eclipse)。
在 “名称” 框中,输入 “GHS Eclipse”。点击 “添加” 按钮。
在 “名称 / 版本” 列表中,展开 “Green Hills MULTI for Eclipse” 项。选择与您的目标架构对应的 “Green Hills MULTI for Eclipse”(例如:Green Hills MULTI for Eclipse (ARM) 和 Green Hills MULTI for Eclipse (ARM64))。如果您拥有多个架构的 MULTI 许可证,可以选择所有已获得许可的目标架构。点击 “下一步”,直至出现许可协议接受页面。
如果您接受该功能许可条款,请选择 “我接受许可协议中的条款”,然后点击 “完成” 按钮。
如果出现 “安全警告” 窗口,请点击 “仍然安装”。
在弹出的 “软件更新” 对话框中,点击 “立即重启” 以重启 S32DS。-依次进入 “Window”-> 选择 “Preference”-> “S32 Design Studio for S32 Platform”-> “S32DS Variables”。为 S32DS_GHS_PATH 变量设置您的 GHS 安装路径(例如 “C:\ghs\comp_202114”)。
在项目向导中使用GHS创建新的S32DS项目。
现在,您可以创建一个新的 S32DS 项目,并为支持 GHS 工具链的器件和 SDK 选择 GHS 工具链。
您可以看到GHS设置显示在S32DS项目属性中。
您好,NXP团队,
我已尝试上述步骤,但无法正常运行,这只是一个简单的测试项目。
创建了一个简单的项目,使用 pins 工具,更新了代码,并尝试构建所有。
以下是新项目生成的编译器和链接器选项。
ARM 独立式 GHS C 编译器 -
ccarm
选项-
-preprocess_assembly_files -list --no_slash_comment -C99 --no_exceptions --gnu_asm --unsigned_fields --unsigned_chars --no_short_enum --ghstd=last --prototype_errors -Wimplicit-int --incorrect_pragma_warnings -Wshadow -Wtrigraphs -Wundef -G -dwarf2 -Osize -DS32K344 -DGHS -DENABLE_FPU -DMPU_ENABLE -DI_CACHE_ENABLE -DD_CACHE_ENABLE -DCPU_S32K344 -DS32K3XX -DCPU_CORTEX_M7 -IC:\Users\ganheg1\workspaceS32DS.3.5\GHS_Test/generate/include -IC:\Users\ganheg1\workspaceS32DS.3.5\GHS_Test/RTD/include -I"C:\NXP\S32DS.3.5\eclipse\../S32DS/software/PlatformSDK_S32K3/RTD/BaseNXP_TS_T40D34M30I0R0/header" -I"C:\NXP\S32DS.3.5\eclipse\/../S32DS/software/PlatformSDK_S32K3/RTD/BaseNXP_TS_T40D34M30I0R0//header/" -I"C:\NXP\S32DS.3.5\eclipse\/../S32DS/software/PlatformSDK_S32K3/RTD/BaseNXP_TS_T40D34M30I0R0//include/" -I"C:\NXP\S32DS.3.5\eclipse\/../S32DS/software/PlatformSDK_S32K3/RTD/Platform_TS_T40D34M30I0R0//include/" -I"C:\NXP\S32DS.3.5\eclipse\/../S32DS/software/PlatformSDK_S32K3/RTD/Platform_TS_T40D34M30I0R0//startup/include/" -I"C:\Users\ganheg1\workspaceS32DS.3.5\GHS_Test/board" -keeptempfiles -littleendian -cpu=cortexm7 -fpu=vfpv5_d16 -fsingle -thumb --no_commons
ARM 独立式 GHS C 链接器
ccarm
选项 -
--gnu_asm -g -dwarf2 -Wl,-keep=C40_Ip_AccessCode -Wl,-v -T "C:\Users\ganheg1\workspaceS32DS.3.5\GHS_Test/Project_Settings/Linker_Files/linker_flash_s32k344.ld" -e Reset_Handler -delete -ignore_debug_references -map -keepmap -Mn -nostartfiles -I"C:\Users\ganheg1\workspaceS32DS.3.5\GHS_Test/board" -larch -lstartup -lind_sd -L"C:\ghs\comp_202354_1fp_x64_ForNXP\lib\thumb2" -cpu=cortexm7 -thumb