Other Parts Discussed in Thread: SYSBIOS
Thread 中讨论的其他器件:SYSBIOS
工具/软件:TI C/C++编译器
您好!
我回来时遇到另一个问题、即从 SD 卡将二进制文件加载到 BBB 中。 我已经为 GCC 项目完成了这项任务、我了解了正在发生的情况以及使用 pdkAppImageCreate.bat 文件时遇到的问题... 但现在我需要使用 TI 编译器来实现它。
我正在使用 CCS 7.2和 TI 17.9编译器... 还有 Sys/BIOS 6.46.5.55
我已经为编译后处理设置了正确的步骤、它正在生成{project}.bin、没有任何问题。 我甚至在工程属性中勾选了"Enable arm hex utility"、但这似乎不会影响 out 或 bin 文件。 然后、我手动使用"tiimage.exe"将页眉放在文件上、将其重命名为"app"、并使用 MLO 将其放在 SD 卡上。
(使用 GCC 时、它运行自己的"tiimage"、并且使用了错误的输入地址... 至少我手动运行它、以便我可以控制它)
但是、它不运行。。。 或者不加载... 或者输入错误... 或其他东西。
我尝试使用0x8000000的起始地址 、也尝试使用映射文件中显示的起始地址: 入口点符号:"_c_int00" 地址:8038fa34 没有人成功。
我从批处理文件中删除了注释、以获取"调试"信息、但这很小。 (批处理文件第147行)。
我有损。 当通过 JTAG XDS100 v2加载时、该程序在调试和发布构建中都能很好地工作。 但无法使用 SD 卡运行。
这是链接器输出级。 它不运行"tiimage"、因此我在构建完成后手动运行它以创建"app"。 我已验证"tiimage"是否正在执行它应该执行的操作。
正在制作./src/sysbios/sysbios.aea8fnv ... gmake[2]:对于"全部"没有要做的事情。 '构建目标:RNDK_NDOUT' '调用:ARM 链接器' "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/bin/armcl -mv7A8 -code_state=32 -me -O2 -opt_for_speed=3 -define=am3359 -define=AM335x --define=SOC_AM335x
--define=bbbAM335x --diag_warning=225 --diag_wrap=off --display_error_number -z -m"RNDK_map"--heap_size=0x800 --stack_size=0x800 -i"C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/lib
-i"C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/include "--reread_libs --define=A8_core=1 --diag_wrap=off --display_error_number --warn_sections --xml_link_info="rNDK_linkInfo.xml"
--rom_model -o "RNDDIS_NDK.out""./main.obj ""./LCD/lcd.obj "./ti/custom/cpsw_driver_customization.obj "./ti/ndk/hal/timer_bios/lltimer.obj ***已调整的长列表**** "./ti/starterware/platform/gpio.obj "./ti/starterware/platform/usb.obj "./ti/starterware/system/cp15.obj "./tools/common.obj
"./usb/rndis.obj ""./usb/stats.obj ""./usb/usbdriver.obj "-l"configPkg/linker.cmd"-llibc.a '已完成构建目标:RNDIS_NDK.OUT' ''''调用:ARM 十六进制实用程序' "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/bin/armhex -o "RNDIS_NDK.hex""RNDIS_NDK.OUT" 转换为扩展的 Tektronix 格式... "RNDIS_NDK.OUT".text =>.text "RNDIS_NDK.OUT".CONST.1 =>.CONST.1 "RNDIS_NDK.OUT".CONST.2 =>.CONST.2 "RNDIS_NDK.OUT".INIT_array =>.INDIST_autobRAY "RNDK_OUT.OUT= .RNDK_RNDK 警告:RNDK_RNDK_OUTx2_RNDK 文件被写入到.NDK 中 正在将数据写入自动生成的文件 RNDIS_NDK.x3 '完成构建:RNDIS_NDK.hex' '' "C:/ti/ccsv7/utils/tiobj2bin/tiobj2bin.bat "RNDIS_NDK.out""RNDISK_NDK.bin""C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/bin/armofd.exe "C:/ti/ccsv7/tools/compiler/ti-cgt-arm_17.9.0.STS/bin/armhex.exe "C:/ti/ccsv7/utils/tiobj2bin/mkhex4bin.exe "ROMS { ALL_MEM:O = 0x80369838、 构建完成'****'
我看到的所有其他帖子都来自错误查找和运行这些可执行文件的人员。 我在运行它们进行转换时没有任何问题、只能尝试通过 BBB 和 SD 卡将其加载到 BBB。
有什么想法我甚至可以开始寻找? 我无法知道它是否将输出正确转换为二进制文件。
我必须假设 MLO 正在加载此映像、但配置有误、或某些入口点设置有误。
谢谢。
-CSW


