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.

Trouble compiling an example project from evmc6748_v1-1

Other Parts Discussed in Thread: CDCE913, CCSTUDIO

Hello,

I am running full version of CCS 3.3 with all of the updates and am connected to OMAPL138-EVM through the external JTAG via XDS510 USB emulator.

I have also chosen C6748_XDS510USB and connected to it.

I am attempting simply to compile an example upp project from evmc6748_v1-1 and get the following error

   error: linking files for incompatible targets (library
            '..\..\..\..\bsl\lib\evmc6748_bsl.lib', member
            'evmc6748_cdce913.obj')

I have tried different target options: "-mv6740", "-mv6700"

Thank you

Oleg

  • Can you check the full set of build options being passed to the compiler? Did you just open the upp examples project in CCS and build, or did you make any modifications?

    The example project has the target option set for -mv6740, and I just verified that the example builds fine as provided. I would closely check the build options including the Debug.lkf file to make sure that the options are all consistent.

  • Even though that library has C6748 in the name, I have my doubts.  Let's see what is really in it.  From the command line run a command similar to:

    % ofd6x --obj_display=none,header evmc6748_bsl.lib | find "CPU"

    That will tell you what CPU this library is built for.  If you are running a Unix shell, use fgrep instead of find.

    Thanks and regards,

    -George

  • George

    I got the command to work by typing 

    C:\CCStudio_v3.3\C6000\cgtools\bin>ofd6x ..\..\..\boards\evmomapl138_v1-1\bsl\li
    b\evmomapl138_bsl.lib | find "CPU"
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9
        CPU Generation:       0x9

    Thanks

     

  • I forgot to mention that I just used an example project without changing anything and got the same result:

     

    [main_upp.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -pdsw225 -fr"./Debug/" -i"../inc" -i"../../../../bsl/inc" -d"DEBUG" -mv6740 -@"../ccs/Debug.lkf" "main_upp.c"

    [test_upp.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -pdsw225 -fr"./Debug/" -i"../inc" -i"../../../../bsl/inc" -d"DEBUG" -mv6740 -@"../ccs/Debug.lkf" "test_upp.c"

    [Linking...] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -@"Debug.lkf"
    <Linking>
    >>   error: linking files for incompatible targets (library
                '..\..\..\..\bsl\lib\evmomapl138_bsl.lib', member
                'evmomapl138_cdce913.obj')
    >>   error: linking files for incompatible targets (library
                '..\..\..\..\bsl\lib\evmomapl138_bsl.lib', member
                'evmomapl138_i2c.obj')
    >>   error: linking files for incompatible targets (library
                '..\..\..\..\bsl\lib\evmomapl138_bsl.lib', member
                'evmomapl138_i2c_gpio.obj')
    >>   error: linking files for incompatible targets (library
                '..\..\..\..\bsl\lib\evmomapl138_bsl.lib', member
                'evmomapl138_timer.obj')
    >>   error: linking files for incompatible targets (library
                '..\..\..\..\bsl\lib\evmomapl138_bsl.lib', member
                'evmomapl138_uPP.obj')
    >>   error: linking files for incompatible targets (library
                '..\..\..\..\bsl\lib\evmomapl138_bsl.lib', member
                'evmomapl138.obj')
    >>   error: linking files for incompatible targets (library
                '..\..\..\..\bsl\lib\evmomapl138_bsl.lib', member
                'evmomapl138_gpio.obj')

    >> Compilation failure

  • nchukeg said:
    C:\CCStudio_v3.3\C6000\cgtools\bin>ofd6x ..\..\..\boards\evmomapl138_v1-1\bsl\li
    b\evmomapl138_bsl.lib | find "CPU"
        CPU Generation:       0x9

    I cannot explain that result.  I'll have to get help.  Because of the holidays, this is unlikely to be resolved until January.  I hope that is OK.

    Thanks and regards,

    -George

  • Please run the same command again, but this time instead of using "find", put the result in a file.   Post the first section of the output; it should look something like this:

    OBJECT FILE:  hello.obj
    
     Object File Information
    
        File Name:                 hello.obj                
        Format:                    TI-COFF Version 2        
        File Type:                 relocatable file         
        Time Stamp:                Fri Dec 24 08:13:46 2010 
        Machine:                   TI C6x                   
        Machine Endian:            little endian            
        Entry Point:               0x00000000               
        Vendor:                    Texas Instruments, Inc.  
        Producer:                  Assembler                
        Assembler Version:         7.3.0                    
        Number of Sections:        8                        
        File Length:               4318                     
        Symbol Table File Offset:  0x00000eeb               
        String Table File Offset:  0x00001089               
        TI-COFF f_flags:           0x00000190               
        CPU Generation:            C6740                    
        Control Data Endian:       little endian
  • Oleg,

    I see you are using the code generation tools that came with CCStudio_v3.3, is that so? If so, they don't support C674x devices and that is the most probable cause.

    You must install at least CGT6.1.x to add support to it. It is available in the Update Advisor page (menu Help --> Update Advisor --> Check for Updates). Install in a different directory other than C:\CCStudio_v3.3\C6000\cgtools.

    After installing, you must select it using the Component Manager (menu Help --> About --> Component Manager).

    Hope this helps,

    Rafael

     

     

     

  • After running the same command I get

    OBJECT FILE:  evmomapl138.obj

     Object File Information

        File Name:            evmomapl138.obj         
        Format:                 TI-COFF Version 2       
        File Type:               relocatable file        
        Time Stamp:           Wed Oct 21 06:33:01 2009
        Machine:                  TI C6x                  
        Machine Endian:       little endian           
        Vendor:                    Texas Instruments, Inc. 
        Vendor Version:       0                       
        Number of Sections:   10                      
        File Length:                 23694                   
        TI-COFF f_flags:      0x00000190              
        CPU Generation:       0x9                     
        Control Data Endian:  little endian           

  • The output you show lacks some of the fields I wanted to see, which tells me that your copy of ofd6x is version 6.0.x or older, which strongly implies that the compiler version you are using is also 6.0.x or older.  That being the case, Rafael's suggestion is the correct one - you must upgrade to at least 6.1.0 to use C674x object files and libraries.

  • That has worked.

    Thank you very much, guys