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.

omapl137 audio example with unresolved error



Dear sir,

I am working with the example "aic3106_loop_linein" standard program.....i have added the path for headers 

evmomapl137.h"
"evmomapl137_mcasp.h"
 "aic3106.h

1)"D:\Naseer's backup\DSP FILES\OMAP L137\2818.revg_EVMOMAPL137_BSL\evmomapl137_v1\dsp\include" and 

2)"D:\Naseer's backup\DSP FILES\OMAP L137\2818.revg_EVMOMAPL137_BSL\evmomapl137_v1\dsp\tests\aic3106".

I have not at all addedd any libraries and  linker command file.My runsupport library is  <automatic> and compiler version is 8.0.3......

Then i am getting the errors like

Description Resource Path Location Type
#10010 errors encountered during linking; "test2done.out" not built test2done C/C++ Problem

Description Resource Path Location Type
<a href="file:/c:/ti/ccsv6/tools/compiler/dmed/HTML/10234.html">#10234-D</a> unresolved symbols remain test2done C/C++ Problem

Description Resource Path Location Type
unresolved symbol main, first referenced in C:\ti\ccsv6\tools\compiler\ti-cgt-c6000_8.0.3\lib\rts6740_elf.lib<args_main.obj> test2done C/C++ Problem

How to over come with this

  • Hi Mohammad,

    The problem seems to be linker error, you need to add the libraries to resolve the error.
    Where did you get the project ?

    If possible, attach the project, I will look into it.
  • Hi sivaraj,

    I attached my project and i dont which all the libraries i need to add and where i ll get that to overcome linker error......

    thank youtest2done.rar

  • I have added "evmomapl137bsl.lib" but the result is same....
  • Hi Mohammad,

    1. Check in which file, the function, EVMOMAPL137_AIC3106_rset is defined. And check whether that file is included. If not, include it.

    2. Check whether "rts6740_elf.lib" is included in the project properties-->linker -->File search path.

    And more over, you have to specify the details like the name of the TI package in which this example enclosed and the version of the TI package. So that we will guide you more how to build the project using CCS.

  • Hi shankari,

         And more over, you have to specify the details like the name of the TI package in which this example enclosed and the version of the TI package

    "D:\Naseer's backup\DSP FILES\OMAP L137\2818.revg_EVMOMAPL137_BSL\evmomapl137_v1\dsp\tests\aic3106" in this  "aic3106_loop_linein" using.

    1. Check in which file, the function, EVMOMAPL137_AIC3106_rset is defined. And check whether that file is included. If not, include it.

    -->>It is been defined in "aic3106.c",i have added both "aic3106.h" and "aic3106.h" to my project.

    2. Check whether "rts6740_elf.lib" is included in the project properties-->linker -->File search path.

    -->>I am unable to find "rts6740_elf.lib" ,where i ll get it.......but i changed my run support library as rts6740_elf.lib.Is this fine...?

    thank you

  • Hi,

    I found "rts6740_elf.lib" and added to my project....but still same error....see the attachment....

    thank you

  • I have checked your files, your main.c file doesn't have "main()" API which is required to build executable.

    Use like this in your main.c file.
    int main(void)
    {
    aic3106_loop_linein();
    while(1);
    }
  • Hi Titu,

    I have added the lines what u sent,but still the same 3 errors......code.docx

  • I'm able to build your project after I have added the following files into "test2done" project.
    evmomapl137_gpio.c
    evmomapl137_i2c.c
    evmomapl137.c


    Build log:

    **** Build of configuration Debug for project test2done ****

    "C:\\ti\\ccsv6\\utils\\bin\\gmake" -k all
    'Building file: ../aic3106.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/bin/cl6x" -mv6740 --abi=eabi --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/include" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/tests/aic3106" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/include" --include_path="D:/Naseer's backup/DSP FILES/OMAP L137/2818.revg_EVMOMAPL137_BSL/evmomapl137_v1/dsp/include" -g --define=omapl137 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="aic3106.pp" "../aic3106.c"
    'Finished building: ../aic3106.c'
    ' '
    'Building file: ../evmomapl137.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/bin/cl6x" -mv6740 --abi=eabi --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/include" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/tests/aic3106" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/include" --include_path="D:/Naseer's backup/DSP FILES/OMAP L137/2818.revg_EVMOMAPL137_BSL/evmomapl137_v1/dsp/include" -g --define=omapl137 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="evmomapl137.pp" "../evmomapl137.c"
    "../evmomapl137.c", line 51: warning #225-D: function "EVMOMAPL137_GPIO_init" declared implicitly
    'Finished building: ../evmomapl137.c'
    ' '
    'Building file: ../evmomapl137_gpio.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/bin/cl6x" -mv6740 --abi=eabi --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/include" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/tests/aic3106" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/include" --include_path="D:/Naseer's backup/DSP FILES/OMAP L137/2818.revg_EVMOMAPL137_BSL/evmomapl137_v1/dsp/include" -g --define=omapl137 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="evmomapl137_gpio.pp" "../evmomapl137_gpio.c"
    'Finished building: ../evmomapl137_gpio.c'
    ' '
    'Building file: ../evmomapl137_i2c.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/bin/cl6x" -mv6740 --abi=eabi --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/include" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/tests/aic3106" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/include" --include_path="D:/Naseer's backup/DSP FILES/OMAP L137/2818.revg_EVMOMAPL137_BSL/evmomapl137_v1/dsp/include" -g --define=omapl137 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="evmomapl137_i2c.pp" "../evmomapl137_i2c.c"
    'Finished building: ../evmomapl137_i2c.c'
    ' '
    'Building file: ../main.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/bin/cl6x" -mv6740 --abi=eabi --include_path="C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/include" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/tests/aic3106" --include_path="E:/BKP/ti/evmomapl137_v1/dsp/include" --include_path="D:/Naseer's backup/DSP FILES/OMAP L137/2818.revg_EVMOMAPL137_BSL/evmomapl137_v1/dsp/include" -g --define=omapl137 --display_error_number --diag_warning=225 --diag_wrap=off --preproc_with_compile --preproc_dependency="main.pp" "../main.c"
    "../main.c", line 30: warning #225-D: function "EVMOMAPL137_AIC3106_rset" declared implicitly
    'Finished building: ../main.c'
    ' '
    'Building target: test2done.out'
    'Invoking: C6000 Linker'
    "C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/bin/cl6x" -mv6740 --abi=eabi -g --define=omapl137 --display_error_number --diag_warning=225 --diag_wrap=off -z -m"test2done.map" --heap_size=0x800 --stack_size=0x800 -i"C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/lib" -i"E:/BKP/ti/evmomapl137_v1/dsp/lib" -i"C:/ti/ccsv6/tools/compiler/ti-cgt-c6000_8.1.0/include" --reread_libs --define=DSP_CORE=1 --warn_sections --display_error_number --diag_wrap=off --xml_link_info="test2done_linkInfo.xml" --rom_model -o "test2done.out" "./aic3106.obj" "./evmomapl137.obj" "./evmomapl137_gpio.obj" "./evmomapl137_i2c.obj" "./main.obj" "../OMAPL137.cmd" -l"libc.a" -levmomapl137bsl.lib
    <Linking>
    warning #10373-D: library "E:/BKP/ti/evmomapl137_v1/dsp/lib/evmomapl137bsl.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 "E:/BKP/ti/evmomapl137_v1/dsp/lib/evmomapl137bsl.lib" contains TI-COFF object files which are incompatible with the ELF output file. Ensure you are using the proper library.
    'Finished building target: test2done.out'
    ' '

    **** Build Finished ****
  • Hi Naseer,

    Able to reproduce your problem and build the "    from "revg_EVMOMAPL137_BSL" pacakge successfully.

    Basically you have two issues. One is the compilation issue and the other one is the linker issue.

    Compilation issue:

    warning #225-D: function "EVMOMAPL137_AIC3106_rset" declared implicitly.

    Cause: The main.c is not able to find the declaration of the function, " "EVMOMAPL137_AIC3106_rset".

    Solution : Go to aic3106.h and add the declaration as below:

    Int16 EVMOMAPL137_AIC3106_rset( Uint16 regnum, Uint16 regval );

    Linker issue:

    1. You added the library file correctly. But notice that the path is specified using the "\". It should be "/".

    2. Once you do this, you can get rid of te linker error.

    2. If you get any compatibility error on "evmomapl137bsl.lib", You have to impor the library project and rebuild it too.

  • Hi shankari,
    I am able to overcome from that error afetr adding
    evmomapl137_gpio.c
    evmomapl137_i2c.c
    evmomapl137.c

    but i have used "\" instead of "/",still i dint get any error....why...?

    and other thing is that " am not able hear the 1khz tone for the same code....."....what to do...

    thank you
  • Hi Titu,finally i got the output.......thank s for help....
    but i need answer for "but i have used "\" instead of "/",still i dint get any error....why...?"
    thank s once again..
  • I hope, windows based CCS would recognize the path using both "/" and "\".

    E:\BKP\ti

    E:/BKP/ti
  • Hi Mohammad,

    As long as it recognises the path of the library correctly and picks up the library which is required for creating the binary, you can ignore and go-ahead.