我使用以下命令生成校验和值、.hex和.bin文件。
不幸的是,首先出现了一个错误。
生成校验和时出错。
add_custom_command(TARGET ${CMAKE_PROJECT_NAME} POST_BUILD
COMMAND ${CMAKE_OBJCOPY} --fill; 0xFF;0x0-0x3CFFD;--checksum=__checksum:2,crc16,0x0;0x0-0x3CFFD
COMMAND ${CMAKE_OBJCOPY} --ihex ${CMAKE_SOURCE_DIR}/Output/exe/${CMAKE_PROJECT_NAME}.elf ${HEX_FILE}
COMMAND ${CMAKE_OBJCOPY} --bin ${CMAKE_SOURCE_DIR}/Output/exe/${CMAKE_PROJECT_NAME}.elf ${BIN_FILE}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/Output/exe
COMMENT "Building ${HEX_FILE} \nBuilding ${BIN_FILE}")
错误弹出为
ielftool错误:命令行选项中缺少分隔符(应为“;')的值:“0xFF”
有谁能帮上忙吗?这将是一个很大的帮助。
- 谢谢-谢谢
1条答案
按热度按时间0sgqnhkj1#
我在postBuild中通过IAR Linux Compiler使用ielftool时遇到了同样的问题。最后我让它运行起来了,但有一些规则需要考虑:
例如:/opt/iarsystems/bxarm/arm/bin/ielftool --填充0xFF ';“$FLASH_START-$FLASH_START_HEADER --填充0xFF”;“$FLASH_PROGRAMMCODE_START-$FLASH_PROGRAMMCODE_END -校验和_校验和:4,crc 32,0x 0”;“$闪存开始-$闪存开始标题”;'$FLASH_程序代码_开始-$FLASH_程序代码_结束--详细信息“$INPUT_FILE”“$INPUT_FILE”