我在linux下编译OMAP-L138_FlashAndBootUtils_2_40,总提示如下错误:
undefined first referenced
symbol in file ——— —————-
start
error: unresolved symbols remain
warning: entry-point symbol "start" undefined
warning: no suitable entry-point found; setting to 0
error: errors encountered during linking; "../sft_C6748_SPI_MEM.out" not built
>> Compilation failure
makefile:165: recipe for target '../sft_C6748_SPI_MEM.out' failed
make[2]: [../sft_C6748_SPI_MEM.out] Error 1 (ignored)
我发现C6748相关的编译,都无法生成.o文件,导致后面也无法生成ASI格式的bin,请问我这个问题应该如何解决?
Shine:
请问是否有修改过源码?是否按照下面的步骤重新编译的?http://processors.wiki.ti.com/index.php/Serial_Boot_and_Flash_Loading_Utility_for_OMAP-L138#Compiling
daming zhang2:
回复 Shine:
是按照文档设置好了编译器的路径的,改过divece.mak: ,设备定义只留下了OMAP-L138
# Generic string for device family DEVSTRING=OMAP-L138 # Particular device types of the family ARM_DEVICETYPES:=OMAPL138 #AM1808 AM1810 OMAPL138_LCDK #DSP_DEVICETYPES:=C6748 #C6748_LCDK DEVICETYPES:=$(ARM_DEVICETYPES) $(DSP_DEVICETYPES) # Supported flash memory types for booting FLASHTYPES:=SPI_MEM #NAND #NOR
编译时会出现几个不能识别的变量:
1、 EXTERNAL_RAM_START ./dsp_obj/aisextra.obj ,这个变量很多文件应用,但就是没有找到在哪申明的,所以编译时老是说没有定义。
2、_PatchDDRConfig 在AISextra/src目录下makefile中出现的 DSP_LNKFLAGS=-z -a -u_PatchDDRConfig -w -x,后将_PatchDDRConfig前的 _ 去掉
3、shart 应该在start.asm和start_C474x.asm中
以上三个变量提示过没有定义。
还提示如下错误:
/home/zdm/ti_cgt/ti-cgt-c6000_8.2.1/bin/cl6x -z -a -u _PatchDDRConfig -w -x -o=../DSP_AISExtra_OMAP-L138.out DSP_AISExtra.cmd ./dsp_obj/aisextra.obj<Linking>error: no input section is linked inwarning: creating output section ".fardata" without a SECTIONS specification. For additional information on this section, please see the 'C6000 EABI Migration' guide at http://processors.wiki.ti.com/index.php/C6000_EABI:C6000_EABI_Migration#C6x_ EABI_Sectionswarning: creating output section ".neardata" without a SECTIONS specification. For additional information on this section, please see the 'C6000 EABI Migration' guide at http://processors.wiki.ti.com/index.php/C6000_EABI:C6000_EABI_Migration#C6x_ EABI_Sectionswarning: creating output section ".rodata" without a SECTIONS specification. For additional information on this section, please see the 'C6000 EABI Migration' guide at http://processors.wiki.ti.com/index.php/C6000_EABI:C6000_EABI_Migration#C6x_ EABI_Sectionswarning: creating group "NEARDP_DATA" to co-locate output sections .neardata and .rodata with .bss
Tony Tang:
回复 daming zhang2:
daming zhang2EXTERNAL_RAM_START ./dsp_obj/aisextra.obj ,这个变量很多文件应用,但就是没有找到在哪申明的,所以编译时老是说没有定义。
这是在cmd文件里定义的。
Frank Tong:
回复 daming zhang2:
问题解决了吗?我也遇到类似问题。
C:\\ti\\ccsv8\\tools\\compiler\\ti-cgt-c6000_8.2.3\\bin\\cl6x -z -a -u_PatchDDRConfig -w -x -o=../DSP_AISExtra_OMAP-L138.out DSP_AISExtra.cmd ./dsp_obj/aisextra.obj<Linking>error: no input section is linked inwarning: creating output section ".fardata" without a SECTIONS specification. For additional information on this section, please see the 'C6000 EABI Migration' guide at processors.wiki.ti.com/…/C6000_EABI:C6000_EABI_Migration EABI_Sectionswarning: creating output section ".neardata" without a SECTIONS specification. For additional information on this section, please see the 'C6000 EABI Migration' guide at processors.wiki.ti.com/…/C6000_EABI:C6000_EABI_Migration EABI_Sectionswarning: creating output section ".rodata" without a SECTIONS specification. For additional information on this section, please see the 'C6000 EABI Migration' guide at processors.wiki.ti.com/…/C6000_EABI:C6000_EABI_Migration EABI_Sectionswarning: creating group "NEARDP_DATA" to co-locate output sections .neardata and .rodata with .bss
undefined first referenced symbol in file ——— —————- _PatchDDRConfig
error: unresolved symbols remainwarning: no suitable entry-point found; setting to 0error: errors encountered during linking; "../DSP_AISExtra_OMAP-L138.out" not built
Zun Niu:
回复 Tony Tang:
您好,这个具体定义应该怎么定义呢?您给的那个链接没找到有关于boot的内容啊