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.

LAUNCHXL-F28379D: What is driverlib_coff.lib and driverlib_eabi.lib ?

Part Number: LAUNCHXL-F28379D

Tool/software:

I get these warnings when I include the driverlib folder files into my project while building the project.

Need help with understanding what are these files and why are they required ?

can I exclude them from my project and build it ? If yes, what will happen if I exclude them ?

Because if I include them, currently I get 4 warnings like below.

warning #10373-D: library "../device/driverlib/ccs/Debug/driverlib_coff.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 "../device/driverlib/ccs/Release/driverlib_coff.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.

  • Hi Sourabh,

    COFF and EABI are just binary formats, you do not need to include more than a single of the .lib files. You should verify the output format of your project to make sure it matches. You can view this in the project property, most likely it will be EABI.

    Regards,

    Peter

  • Hi Peter,

    Thank you for your response.

    I need to get rid of these warnings. What do I need to do so?

    And where can I find the elf file ?

    What happens if I exclude all these 6 highlighted .lib files from my build configurations ?

  • Hi Sourabh,

    You are showing the .lib files that are in the generated build output folder, but you will want to select the .lib folders from the actual project files and exclude them from the build. Specifically, you can should two of them from each build configuration. If you leave the .lib folder remaining in the build, I think this should resolve your build issue

    Regards,

    Peter

  • Hi Peter,

    So, If I understand correctly, the .lib files in the Debug & Release files are generated as an outcome of my project and they are not used as an input to the build process while generating the .out file right ? And I can exclude these 6 files from my project since they do not impact anything.

  • Hi Sourabh,

    You wouldn't want to rebuild the driverlib library as that will increase your build time and be unnecessary,  but the driverlib.lib should be referenced in your project in order to be able to utilize the DriverLib function libraries. If you are not using the DrfiverLib functions then you do not need to include the driverlib.lib, driverlib_coef.lib or the driverlib_eabi.lib. But if you want to use the DriverLib functions, you should only include the driverlib.lib file.

    Regards,

    Peter

  • Hi Peter,

    I was planning to exclude the driverlib.lib, driverlib_coef.lib and the driverlib_eabi.lib files (since I am not very confident of what exactly is inside these files and how they'll impact by final executible .out) from the build process and include the entire driverlib folder. So, that I could be able to use the functions provided inside those files whose definitions are visible and it could help debug the functions line by line.

    Is this a correct approach ?

  • Hi Sourabh,

    The driverlib.lib files contain the same exact source seen in the included driverlib folder except they are compiled into a binary. You can choose to exclude the .lib files and include the driverlib folder, but this will mean the compiler will be compiling the driverlib source folder each time you run a project build which will increase your build times. 

    CCS should be able to map the driverlib functions you are using in your source code to the header files in the driverlib folder even if they are excluded from the build, so you can still view the source files.

    Regards,

    Peter