This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

problem re-building UBL for dm368

Hi,

I'm trying to re-build UBL for dm368 processor in CCSv4 enviroment.

I have the following error during linker operation:

'Building target: ubl_dm365.out'
'Invoking: Linker'
"C:/Programmi/Texas Instruments/ccsv4/tools/compiler/tms470/bin/cl470" -mv5e -g --diag_warning=225 -me --abi=eabi --code_state=32 -z -m"ubl_dm365.map" --warn_sections -i"C:/Programmi/Texas Instruments/ccsv4/tools/compiler/tms470/lib" -i"C:/Programmi/Texas Instruments/ccsv4/tools/compiler/tms470/include" --reread_libs --rom_model -o "ubl_dm365.out"  "./CCS/NANDEraser/src/nanderaser.obj" "./CCS/NANDWriter/src/nandwriter.obj" "./CCS/NAND_ECC_Test/src/nandtester.obj" "./CCS/NORWriter/src/norwriter.obj" "./Common/src/device_nand.obj" "./Common/src/device.obj" -l"libc.a" "../CCS/UBL/UBL.cmd" "../CCS/UBL/ubl2bin.cmd" "../CCS/NORWriter/NORWriter.cmd" "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd" "../CCS/NANDWriter/NANDWriter.cmd" "../CCS/NANDEraser/NANDEraser.cmd"
<Linking>
"../CCS/UBL/ubl2bin.cmd", line 3: error: invalid option:  -zero
"../CCS/UBL/ubl2bin.cmd", line 4: error: expecting filename, option, MEMORY, or
   SECTIONS instead of "8"
error: cannot find file "inkerfill"
ERROR: argument to option -f ("value") is out of range


>> Compilation failure
C:\Programmi\Texas Instruments\ccsv4\utils\gmake\gmake: *** [ubl_dm365.out] Error 1
C:\Programmi\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.
Build complete for project ubl_dm365

Could someone help us?

Thanks in advance.

Alfredo

  • The error is saying that the linker finds the options in ubl2bin.cmd invalid. I believe this is because this file is an input command file to the hex converter for converting .out file to binary format, not a linker command file. Remove this file from the CCS4 project and it should build fine. You can exclude the file from build by right-clicking on the file name in the Project view and choosing "Excluse File from build".

  • Hi,

    thanks. I have removed the suggested file but, as you can see from the following rows, I have more others errors.

    'Building target: ubl_dm365.out'
    'Invoking: Linker'
    "C:/Programmi/Texas Instruments/ccsv4/tools/compiler/tms470/bin/cl470" -mv5e -g --diag_warning=225 -me --abi=eabi --code_state=32 -z -m"ubl_dm365.map" --warn_sections -i"C:/Programmi/Texas Instruments/ccsv4/tools/compiler/tms470/lib" -i"C:/Programmi/Texas Instruments/ccsv4/tools/compiler/tms470/include" --reread_libs --rom_model -o "ubl_dm365.out"  "./CCS/NANDEraser/src/nanderaser.obj" "./CCS/NANDWriter/src/nandwriter.obj" "./CCS/NAND_ECC_Test/src/nandtester.obj" "./CCS/NORWriter/src/norwriter.obj" "./Common/src/device_nand.obj" "./Common/src/device.obj" -l"libc.a" "../CCS/UBL/UBL.cmd" "../CCS/NORWriter/NORWriter.cmd" "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd" "../CCS/NANDEraser/NANDEraser.cmd"
    <Linking>
    "../CCS/NORWriter/NORWriter.cmd", line 6: error: DRAM memory range overlaps
       existing memory range UBL_DRAM
    "../CCS/NORWriter/NORWriter.cmd", line 7: error: DRAM_PROG memory range
       overlaps existing memory range UBL_DRAM
    "../CCS/NORWriter/NORWriter.cmd", line 8: error: AEMIF memory range overlaps
       existing memory range UBL_F_SELFCOPY
    "../CCS/NORWriter/NORWriter.cmd", line 8: error: AEMIF memory range overlaps
       existing memory range UBL_F_TEXT
    "../CCS/NORWriter/NORWriter.cmd", line 8: error: AEMIF memory range overlaps
       existing memory range UBL_F_DATA
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 6: error: DRAM memory range has
       already been specified
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 6: error: DRAM memory range
       overlaps existing memory range DRAM
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 6: error: DRAM memory range
       overlaps existing memory range UBL_DRAM
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 7: error: DRAM_PROG memory range
       overlaps existing memory range UBL_DRAM
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 7: error: DRAM_PROG memory range
       has already been specified
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 7: error: DRAM_PROG memory range
       overlaps existing memory range DRAM_PROG
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 8: error: AEMIF memory range has
       already been specified
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 8: error: AEMIF memory range
       overlaps existing memory range AEMIF
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 8: error: AEMIF memory range
       overlaps existing memory range UBL_F_SELFCOPY
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 8: error: AEMIF memory range
       overlaps existing memory range UBL_F_TEXT
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 8: error: AEMIF memory range
       overlaps existing memory range UBL_F_DATA
    "../CCS/NANDEraser/NANDEraser.cmd", line 6: error: DRAM memory range has
       already been specified
    "../CCS/NANDEraser/NANDEraser.cmd", line 6: error: DRAM memory range overlaps
       existing memory range DRAM
    "../CCS/NANDEraser/NANDEraser.cmd", line 6: error: DRAM memory range has
       already been specified
    "../CCS/NANDEraser/NANDEraser.cmd", line 6: error: DRAM memory range overlaps
       existing memory range DRAM
    "../CCS/NANDEraser/NANDEraser.cmd", line 6: error: DRAM memory range overlaps
       existing memory range UBL_DRAM
    "../CCS/NANDEraser/NANDEraser.cmd", line 7: error: DRAM_PROG memory range
       overlaps existing memory range UBL_DRAM
    "../CCS/NANDEraser/NANDEraser.cmd", line 7: error: DRAM_PROG memory range has
       already been specified
    "../CCS/NANDEraser/NANDEraser.cmd", line 7: error: DRAM_PROG memory range
       overlaps existing memory range DRAM_PROG
    "../CCS/NANDEraser/NANDEraser.cmd", line 7: error: DRAM_PROG memory range has
       already been specified
    "../CCS/NANDEraser/NANDEraser.cmd", line 7: error: DRAM_PROG memory range
       overlaps existing memory range DRAM_PROG
    "../CCS/NANDEraser/NANDEraser.cmd", line 8: error: AEMIF memory range has
       already been specified
    "../CCS/NANDEraser/NANDEraser.cmd", line 8: error: AEMIF memory range overlaps
       existing memory range AEMIF
    "../CCS/NANDEraser/NANDEraser.cmd", line 8: error: AEMIF memory range has
       already been specified
    "../CCS/NANDEraser/NANDEraser.cmd", line 8: error: AEMIF memory range overlaps
       existing memory range AEMIF
    "../CCS/NANDEraser/NANDEraser.cmd", line 8: error: AEMIF memory range overlaps
       existing memory range UBL_F_SELFCOPY
    "../CCS/NANDEraser/NANDEraser.cmd", line 8: error: AEMIF memory range overlaps
       existing memory range UBL_F_TEXT
    "../CCS/NANDEraser/NANDEraser.cmd", line 8: error: AEMIF memory range overlaps
       existing memory range UBL_F_DATA
    "../CCS/NORWriter/NORWriter.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_START" being redefined
    "../CCS/NORWriter/NORWriter.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_END" being redefined
    "../CCS/NORWriter/NORWriter.cmd", line 25: warning: absolute symbol "EMIFStart"
       being redefined
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_START" being redefined
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_END" being redefined
    "../CCS/NANDEraser/NANDEraser.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_START" being redefined
    "../CCS/NANDEraser/NANDEraser.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_END" being redefined
    "../CCS/NANDEraser/NANDEraser.cmd", line 25: warning: absolute symbol
       "EMIFStart" being redefined
    error: symbol "main" redefined: first defined in
       "./CCS/NANDEraser/src/nanderaser.obj"; redefined in
       "./CCS/NANDWriter/src/nandwriter.obj"
    error: symbol "main" redefined: first defined in
       "./CCS/NANDEraser/src/nanderaser.obj"; redefined in
       "./CCS/NAND_ECC_Test/src/nandtester.obj"
    error: symbol "main" redefined: first defined in
       "./CCS/NANDEraser/src/nanderaser.obj"; redefined in
       "./CCS/NORWriter/src/norwriter.obj"

    "../CCS/UBL/UBL.cmd", line 43: warning: no matching section
    >> Compilation failure
    "../CCS/UBL/UBL.cmd", line 49: warning: no matching section
    "../CCS/UBL/UBL.cmd", line 57: warning: no matching section
    "../CCS/UBL/UBL.cmd", line 64: warning: no matching section

     undefined first referenced
      symbol       in file    
     --------- ----------------
     boot                     

    error: unresolved symbols remain
    "../CCS/NORWriter/NORWriter.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_START" being redefined
    "../CCS/NORWriter/NORWriter.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_END" being redefined
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_START" being redefined
    "../CCS/NAND_ECC_Test/NAND_ECC_Test.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_END" being redefined
    "../CCS/NANDEraser/NANDEraser.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_START" being redefined
    "../CCS/NANDEraser/NANDEraser.cmd", line 24: warning: absolute symbol
       "EXTERNAL_RAM_END" being redefined
    "../CCS/NANDEraser/NANDEraser.cmd", line 25: warning: absolute symbol
       "EMIFStart" being redefined
    warning: entry-point symbol "boot" undefined
    warning: no suitable entry-point found; setting to 0
    error: errors encountered during linking; "ubl_dm365.out" not built
    C:\Programmi\Texas Instruments\ccsv4\utils\gmake\gmake: *** [ubl_dm365.out] Error 1
    C:\Programmi\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.
    Build complete for project ubl_dm365

     

    I suspect that my CCSv4 project's structure is not correct or the related makefile is wrong.

    Could you suggest me  a link where I can find a CCSv4 right project for flash utils folder (that includes UBL)?

    Thanks in advance.

     

     

  • I have solved.

    I have re-imported project in CCSv4 enviroments and now compilation is ok.

    Thanks to all.

  • Montif,

    I suspect that you still have more than one relevant linker command file for this project. In CCSv4 any file within the project folder is considered part of the project unless it is explicitly excluded from build. This is different from CCS3 because there the files had to be added to the project and were not added to the build unless explicitly told so by the user. If you have a CCS3.3 project for the flash_utils I would suggest you take a look at the .pjt file and see which files are included in the project. Then make sure only those files are in the build for CCS4. Any additional linker command files should be excluded from build.