您好!
我有一位客户在开发基于 MSP430FRboot 1.3代码的应用、他们的项目正在使用20.2.7 LTS 编译器进行构建、但一旦他们升级到新的21.6.0 LTS 编译器、编译就会在文件 TI_MSPBoot_MI_FRAMDualImg.c 上失败
我使用新编译器和编译器段未修改地编译了该示例、客户必须用实际的十六进制地址替换几个指针、以使编译成功。 特定的指针/地址为 &_DOWN_Offset_SIZE、&_DOWN_Offset1、&_DOWN_Offset2、需要在代码中替换的 BOOT_Vector_table。
使用以下错误进行特定编译器调用 :
Invoking: MSP430 Compiler "/Applications/ti/ccs1200/ccs/tools/compiler/ti-cgt-msp430_21.6.0.LTS/bin/cl430" -vmspx --code_model=large --data_model=large -O3 --opt_for_speed=0 --use_hw_mpy=F5 --include_path="/Applications/ti/ccs1200/ccs/ccs_base/msp430/include" --include_path="/Applications/ti/ccs1200/ccs/tools/compiler/ti-cgt-msp430_21.6.0.LTS/include" --include_path="/Users/munan/customer_apps/Kodak/MSPBoot_FR5994_UART" --include_path="/Users/munan/customer_apps/Kodak/MSPBoot_FR5994_UART/AppMgr" --include_path="/Users/munan/customer_apps/Kodak/MSPBoot_FR5994_UART/Comm" --include_path="/Users/munan/customer_apps/Kodak/MSPBoot_FR5994_UART/MI" --advice:power="all" --advice:power_severity=suppress --advice:hw_config=all --define=MSPBoot_20bit --define=MSPBoot_BSL --define=MSPBoot_CI_UART --define=__MSP430FR5994__ --define=_MPU_ENABLE -g --gcc --printf_support=minimal --diag_warning=225 --display_error_number --abi=eabi --silicon_errata=CPU21 --silicon_errata=CPU22 --silicon_errata=CPU40 --preproc_with_compile --preproc_dependency="MI/TI_MSPBoot_MI_FRAMDualImg.d_raw" --obj_directory="MI" "../MI/TI_MSPBoot_MI_FRAMDualImg.c" MI/subdir_rules.mk:7: recipe for target 'MI/TI_MSPBoot_MI_FRAMDualImg.obj' failed abnormal termination of /Applications/ti/ccs1200/ccs/tools/compiler/ti-cgt-msp430_21.6.0.LTS/bin/cg430 gmake: *** [MI/TI_MSPBoot_MI_FRAMDualImg.obj] Segmentation fault: 11 gmake: Target 'all' not remade because of errors.
我还检查了我的一侧、恢复使用旧编译器解决了这个问题。 21.6.0 LTS 编译器是否有问题?
Munan