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.

CCS/SW-EK-TM4C1294XL: Tivaware functions fail to link although included

Part Number: SW-EK-TM4C1294XL

Tool/software: Code Composer Studio

Hi

I created a new Tiva project from scratch trying to access EEPROM., Although eeprom.c is included I get the following error while building

undefined first referenced
symbol in file
--------- ----------------
EEPROMInit ./main.obj
SysCtlClockSet ./main.obj
SysCtlPeripheralEnable ./main.obj

error #10234-D: unresolved symbols remain
error #10010: errors encountered during linking; "EEPPROMBASIC.out" not built

>> Compilation failure
makefile:142: recipe for target 'EEPPROMBASIC.out' failed
gmake[1]: *** [EEPPROMBASIC.out] Error 1
makefile:138: recipe for target 'all' failed

Regards

Pavitra

  • Pavitra,

    I find the best solution is to:

    - Create a environment variable in your WORKSPACE, not in the project, pointing to the Tivaware folder. (menu Window > Preferences > Code Composer Studio > Build > Variables), add a TIVA_ROOT variable type Path pointing to the folder, for example:
    C:\ti\TivaWare214178

    - On the compiler part of your project properties (CCS Build > ARM Compiler > Include Options > Add dir to #include search path), you add the variable above.
    "${TIVA_ROOT}"

    - On the linker part of your project (CCS Build > ARM Linker > File Search Path > Include library...), add the pre-compiled Tivaware lib:
    "${TIVA_ROOT}/driverlib/ccs/Debug/driverlib.lib"

    On your project files, do not include the .c of the Tivaware. Simply
    #include "driverlib/something.h"

    Regards

    Bruno
  • Hi Pavitra,

     Can you please check if you have the drivelib.lib included? Please see below.