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.

How to recompile the COFF lib to a ELF lib?

I'm using the secure boot, so there are some SK_API calls in my project.

I can build my project successfully with COFF output format.

But when I try to build the project with ELF output format, there is a error:

So I find the lib file in \ti\ccsv5\tools\compiler\c6000_7.4.4\lib, 

there is a rts64plus_elf.lib and a rts64plus.lib.

I thought the rts64plus.lib is COFF format, and the rts64plus.lib is ELF format.

So, I changed the name of rts64plus_elf.lib to rts64plus.lib, and rebuild the project, but got:

So, I think the rts64plus_elf.lib doesn't have the SK_APIs.

     I find the source code in the ti\ccsv5\tools\compiler\c6000_7.4.4\lib\

     The rtssrc.zip is the package of the source code. And there is a mklib.exe. I tried the mklib.exe but it occured some errors. I've use mklib -h to see the options of the command, but didn't get the right way to compile the source code.

    I've also open a new CCS "Static Library" project and add all the source files to the project. But when I build the project, many errors occured.

    Can TI give me some guidance on recompile the source code?

    And can TI provide me the rts64plus.lib in ELF format?

    Thank you.

Frank

  • FrankXu said:
    I'm using the secure boot, so there are some SK_API calls in my project.

    I don't recognize the term SK_API.  Whatever those functions are, they do not come from the compiler RTS library, but some other library.

    FrankXu said:

    I can build my project successfully with COFF output format.

    But when I try to build the project with ELF output format, there is a error:

    Please put your project back in the state where it gets this first error.  Please show exactly how the linker is invoked by copy-n-paste on the text from the Console view.  Do not take another screen shot.  Copy-n-paste all the text from when the linker is invoked.  I suspect there are some errors here which need to be fixed.

    From the small part of the linker invocation I can see in the screen shot, I notice you refer to a few other libraries.  Changing to ELF means all of these libraries must change to ELF as well, not just the RTS library.

    FrankXu said:

    I thought the rts64plus.lib is COFF format, and the rts64plus.lib is ELF format.

    So, I changed the name of rts64plus_elf.lib to rts64plus.lib

    In the C6000 compiler installation, all of the libraries with "_elf" in the name contain ELF format object files.  In your case, there is no need to rename or rebuild any RTS library.  I suspect something else goes wrong before things get to that point.

    Thanks and regards,

    -George

  • Hi George,

         Thank you very for reply.

         I  put my project back in the state where it gets this first error. The error is:

        "fatal error #16031: object files have incompatible formats ("D:/ti/ccsv5/tools/compiler/c6000_7.4.4/lib/rts64plus.lib<boot.obj>" = TI-COFF, "./util.obj" = ELF).  Please see the 'C6000 EABI Migration' guide at http://processors.wiki.ti.com/index.php/C6000_EABI_Migration"

        The whole Console view is:

         "


    **** Build of configuration Debug for project GPIO_LED_Secure_boot_NAND ****

    "D:\\ti\\ccsv5\\utils\\bin\\gmake" -k all
    'Building file: ../KeyEncryption_Nand.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="KeyEncryption_Nand.pp"  "../KeyEncryption_Nand.c"
    'Finished building: ../KeyEncryption_Nand.c'
    ' '
    'Building file: ../aes.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="aes.pp"  "../aes.c"
    'Finished building: ../aes.c'
    ' '
    'Building file: ../aes_cbc_decrypt.asm'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="aes_cbc_decrypt.pp"  "../aes_cbc_decrypt.asm"
    'Finished building: ../aes_cbc_decrypt.asm'
    ' '
    'Building file: ../aes_cbc_encrypt.asm'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="aes_cbc_encrypt.pp"  "../aes_cbc_encrypt.asm"
    'Finished building: ../aes_cbc_encrypt.asm'
    ' '
    'Building file: ../aes_decrypt.sa'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="aes_decrypt.pp"  "../aes_decrypt.sa"
    'Finished building: ../aes_decrypt.sa'
    ' '
    'Building file: ../aes_encrypt.sa'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="aes_encrypt.pp"  "../aes_encrypt.sa"
    'Finished building: ../aes_encrypt.sa'
    ' '
    'Building file: ../aes_keyschedule.sa'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="aes_keyschedule.pp"  "../aes_keyschedule.sa"
    'Finished building: ../aes_keyschedule.sa'
    ' '
    'Building file: ../async_mem.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="async_mem.pp"  "../async_mem.c"
    "../async_mem.c", line 109: warning #225-D: function declared implicitly
    'Finished building: ../async_mem.c'
    ' '
    'Building file: ../debug.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="debug.pp"  "../debug.c"
    'Finished building: ../debug.c'
    ' '
    'Building file: ../device.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="device.pp"  "../device.c"
    "../device.c", line 630: warning #225-D: function declared implicitly
    'Finished building: ../device.c'
    ' '
    'Building file: ../device_async_mem.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="device_async_mem.pp"  "../device_async_mem.c"
    'Finished building: ../device_async_mem.c'
    ' '
    'Building file: ../device_nand.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="device_nand.pp"  "../device_nand.c"
    'Finished building: ../device_nand.c'
    ' '
    'Building file: ../main_task.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="main_task.pp"  "../main_task.c"
    'Finished building: ../main_task.c'
    ' '
    'Building file: ../nand.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="nand.pp"  "../nand.c"
    'Finished building: ../nand.c'
    ' '
    'Building file: ../sha.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="sha.pp"  "../sha.c"
    'Finished building: ../sha.c'
    ' '
    'Building file: ../sha1.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="sha1.pp"  "../sha1.c"
    'Finished building: ../sha1.c'
    ' '
    'Building file: ../sha256.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="sha256.pp"  "../sha256.c"
    'Finished building: ../sha256.c'
    ' '
    'Building file: ../sk_cwrap.asm'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="sk_cwrap.pp"  "../sk_cwrap.asm"
    'Finished building: ../sk_cwrap.asm'
    ' '
    'Building file: ../uart_print.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="uart_print.pp"  "../uart_print.c"
    'Finished building: ../uart_print.c'
    ' '
    'Building file: ../util.c'
    'Invoking: C6000 Compiler'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --include_path="../include" --include_path="../../../Include" --include_path="../../../Include/StarterWare/Drivers" --include_path="../../../Include/StarterWare/Drivers/hw" --include_path="../../../Include/StarterWare/Drivers/c674x" --include_path="../../../Include/StarterWare/Drivers/c674x/c6748" --include_path="D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="util.pp"  "../util.c"
    'Finished building: ../util.c'
    ' '
    'Building target: GPIO_LED_Secure_boot_NAND.out'
    'Invoking: C6000 Linker'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off -z --stack_size=0x800 -m"GPIO_LED_Secure_boot_NAND.map" --heap_size=0x800 -i"../lib" -i"../../../Library" -i"D:/ti/ccsv5/tools/compiler/c6000_7.4.4/lib" -i"D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --reread_libs --warn_sections --display_error_number --diag_wrap=off --xml_link_info="GPIO_LED_Secure_boot_NAND_linkInfo.xml" --rom_model -o "GPIO_LED_Secure_boot_NAND.out"  "./util.obj" "./uart_print.obj" "./sk_cwrap.obj" "./sha256.obj" "./sha1.obj" "./sha.obj" "./nand.obj" "./main_task.obj" "./device_nand.obj" "./device_async_mem.obj" "./device.obj" "./debug.obj" "./async_mem.obj" "./aes_keyschedule.obj" "./aes_encrypt.obj" "./aes_decrypt.obj" "./aes_cbc_encrypt.obj" "./aes_cbc_decrypt.obj" "./aes.obj" "./KeyEncryption_Nand.obj" "../C6748.cmd" "../lib/drivers.lib" "../lib/grlib.lib" "../lib/platform.lib" "../lib/utils.lib" -l../../../Library/Platform/Debug/Platform.lib -l../../../Library/StarterWare/Drivers/Debug/drivers.lib -lgrlib.lib -lutils.lib -l"libc.a"
    <Linking>
    fatal error #16031: object files have incompatible formats ("D:/ti/ccsv5/tools/compiler/c6000_7.4.4/lib/rts64plus.lib<boot.obj>" = TI-COFF, "./util.obj" = ELF).  Please see the 'C6000 EABI Migration' guide at processors.wiki.ti.com/.../C6000_EABI_Migration

    >> Compilation failure
    gmake: *** [GPIO_LED_Secure_boot_NAND.out] Error 1
    gmake: Target `all' not remade because of errors.

    **** Build Finished ****

    "

          Please help. Thanks a lot.

    Frank

  • Because your linker invocation ends with ...

    FrankXu said:
    -l"libc.a"

    The linker should automatically choose the best RTS library for you.  In this case, one of the ELF libraries.  But it doesn't.  I'm not sure why.  My first guess is that the linker command file ...

    FrankXu said:
    "../C6748.cmd"

    contains a reference to rts64plus.lib.  Please inspect that file and see if that is the case.

    Thanks and regards,

    -George

  • Hi George,

          Yes, in the /c6748.cmd:

          

          I comment the "-lrts64plus.lib" in the first line, but got:

    "


    **** Build of configuration Debug for project GPIO_LED_Secure_boot_NAND ****

    "D:\\ti\\ccsv5\\utils\\bin\\gmake" -k all
    'Building target: GPIO_LED_Secure_boot_NAND.out'
    'Invoking: C6000 Linker'
    "D:/ti/ccsv5/tools/compiler/c6000_7.4.4/bin/cl6x" -mv6740 --abi=eabi -g --define=c6748 --display_error_number --diag_warning=225 --diag_wrap=off -z --stack_size=0x800 -m"GPIO_LED_Secure_boot_NAND.map" --heap_size=0x800 -i"../lib" -i"../../../Library" -i"D:/ti/ccsv5/tools/compiler/c6000_7.4.4/lib" -i"D:/ti/ccsv5/tools/compiler/c6000_7.4.4/include" --reread_libs --warn_sections --display_error_number --diag_wrap=off --xml_link_info="GPIO_LED_Secure_boot_NAND_linkInfo.xml" --rom_model -o "GPIO_LED_Secure_boot_NAND.out" "./util.obj" "./uart_print.obj" "./sk_cwrap.obj" "./sha256.obj" "./sha1.obj" "./sha.obj" "./nand.obj" "./main_task.obj" "./device_nand.obj" "./device_async_mem.obj" "./device.obj" "./debug.obj" "./async_mem.obj" "./aes_keyschedule.obj" "./aes_encrypt.obj" "./aes_decrypt.obj" "./aes_cbc_encrypt.obj" "./aes_cbc_decrypt.obj" "./aes.obj" "./KeyEncryption_Nand.obj" "../C6748.cmd" "../lib/drivers.lib" "../lib/grlib.lib" "../lib/platform.lib" "../lib/utils.lib" -l../../../Library/Platform/Debug/Platform.lib -l../../../Library/StarterWare/Drivers/Debug/drivers.lib -lgrlib.lib -lutils.lib -l"libc.a"
    <Linking>
    warning #10373-D: library "../lib/drivers.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/grlib.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/platform.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/utils.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/grlib.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.

    warning #10373-D: library "../lib/utils.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    >> Compilation failure
    warning #10373-D: library "../lib/drivers.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/grlib.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/platform.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/utils.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/grlib.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    warning #10373-D: library "../lib/utils.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.

    undefined first referenced
    symbol in file
    --------- ----------------
    AES_cbcEncrypt ./KeyEncryption_Nand.obj
    AES_encrypt ./KeyEncryption_Nand.obj
    AES_keySchedule ./KeyEncryption_Nand.obj
    EXTERNAL_RAM_START ./util.obj
    NANDStart ./KeyEncryption_Nand.obj
    SK_allocSC ./KeyEncryption_Nand.obj
    SK_registerSCWP ./KeyEncryption_Nand.obj
    SK_setUserKey ./KeyEncryption_Nand.obj
    SK_switchNonSec ./main_task.obj
    _STACK_SIZE ./KeyEncryption_Nand.obj

    error #10234-D: unresolved symbols remain
    error #10010: errors encountered during linking; "GPIO_LED_Secure_boot_NAND.out" not built
    gmake: *** [GPIO_LED_Secure_boot_NAND.out] Error 1
    gmake: Target `all' not remade because of errors.

    **** Build Finished ****

    "

        But the symbols could be found when compile in COFF format.

    Frank

  • To build for EABI, all of the object files and libraries must use ELF object file format.  In your case, you need EABI built versions of the libraries drivers.lib, grlib.lib, platform.lib, and utils.lib.  Unfortunately, I am not familiar with those libraries, and I cannot tell you the best way to get EABI versions of them.

    Thanks and regards,

    -George