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.

Build a ccv3.1 project using the cc4.0 IDE for TMS320F280

Other Parts Discussed in Thread: TMS320F2801, CCSTUDIO, TVP5154

Hi, I have an existing project for the TMS320F2801 that was build on the ccv3.1 IDE. Since we don't have this v3.1 IDE anymore, I have downloaded the latest ccv4.0 IDE from TI's website and imported the project into the new IDE using Projects->Import Legacy 3.3 projects option. I get some warnings in migration.log:

!CONFIGURATION: 'com.ti.ccstudio.buildDefinitions.C2000.Debug.708064234' [Tue Sep 08 14:53:50 PDT 2009]

    !TOOL: 'com.ti.ccstudio.buildDefinitions.C2000_5.2.exe.linkerDebug.282970513./JP3/rts2800.lib'

        !WARNING: Unresolved option: com.ti.ccstudio.buildDefinitions.C2000_5.2.exe.linkerDebug.282970513./JP3/rts2800.lib::-q

    !TOOL: 'com.ti.ccstudio.buildDefinitions.C2000_5.2.exe.linkerDebug.282970513./JP3/lib/IQmath.lib'

        !WARNING: Unresolved option: com.ti.ccstudio.buildDefinitions.C2000_5.2.exe.linkerDebug.282970513./JP3/lib/IQmath.lib::-q

    !TOOL: 'com.ti.ccstudio.buildDefinitions.C2000_5.2.exe.linkerDebug.282970513./JP3/cmd/DSP280x_Headers_nonBIOS.cmd'

        !WARNING: Unresolved option: com.ti.ccstudio.buildDefinitions.C2000_5.2.exe.linkerDebug.282970513./JP3/cmd/DSP280x_Headers_nonBIOS.cmd::-q

When I tried to do Rebuid All, I get build errors:

Building file: ../source/JP3.c'
'Invoking: C2000 Compiler'
"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/bin/cl2000" --silicon_version=28 -g --define="_DEBUG" --define="LARGE_MODEL" --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/include" --include_path="C:/Documents and Settings/Dennis/Desktop/DSPCode/DSP Code/Rel 1.0/Debug" --include_path="C:/Program Files/Texas Instruments/bios_5_40_02_22/packages/ti/bios/include" --include_path="C:/Program Files/Texas Instruments/bios_5_40_02_22/packages/ti/rtdx/include/c2000" --include_path="C:/Program Files/Texas Instruments/xdais_6_23/packages/ti/xdais" --include_path="../include" --quiet --diag_warning=225 --sat_reassoc=off --large_memory_model --fp_reassoc=off --obj_directory="c:/ti/myprojects/JP3/Debug"  --preproc_with_compile --preproc_dependency="source/JP3.pp" "../source/JP3.c"
"../source/JP3.c", line 138: warning: function declared implicitly
"../source/JP3.c", line 167: warning: function declared implicitly
'Finished building: ../source/JP3.c'
' '
'Building target: JP3.out'
'Invoking: C2000 Linker'
"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/bin/cl2000" -z -m"JP3.map" --warn_sections -i"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/lib" -i"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/include" -i"C:/Program Files/Texas Instruments/bios_5_40_02_22/packages/ti/rtdx/lib/c2000" -i"C:/Program Files/Texas Instruments/bios_5_40_02_22/packages/ti/bios/lib" -i"C:/Documents and Settings/Dennis/Desktop/DSPCode/DSP Code/Rel 1.0" -i"../cmd" --reread_libs --rom_model -o "JP3.out"  "c:/ti/myprojects/JP3/Debug/JP3.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_usDelay.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_SysCtrl.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_Sci.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_PieVect.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_PieCtrl.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_MemCopy.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_Gpio.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_GlobalVariableDefs.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_EPwm.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_ECap.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_DefaultIsr.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_CpuTimers.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_CodeStartBranch.obj" "c:/ti/myprojects/JP3/Debug/DSP280x_Adc.obj" "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/lib/rts2800.lib" "../lib/IQmath.lib" "../cmd/DSP280x_Headers_nonBIOS.cmd" "../cmd/F2801.cmd"
<Linking>
fatal error: file "C:/Program Files/Texas
   Instruments/ccsv4/tools/compiler/c2000/lib/rts2800.lib<boot.obj>" has a
   Tag_Memory_Model attribute value of "1" that is different than one
   previously seen ("2"); combining incompatible files

>> Compilation failure
C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: *** [JP3.out] Error 1
C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.
Build complete for project JP3

Here is what my project file looks like:

; Code Composer Project File, Version 2.0 (do not modify or remove this line)

[Project Settings]
ProjectDir="c:\ti\myprojects\JP3\"
ProjectType=Executable
CPUFamily=TMS320C28XX
Tool="Compiler"
Tool="CustomBuilder"
Tool="DspBiosBuilder"
Tool="Linker"
Config="Debug"
Config="Release"

[Source Files]
Source="..\..\c2000\cgtools\lib\rts2800.lib"
Source="lib\IQmath.lib"
Source="source\DSP280x_Adc.c"
Source="source\DSP280x_CodeStartBranch.asm"
Source="source\DSP280x_CpuTimers.c"
Source="source\DSP280x_DefaultIsr.c"
Source="source\DSP280x_ECap.c"
Source="source\DSP280x_EPwm.c"
Source="source\DSP280x_GlobalVariableDefs.c"
Source="source\DSP280x_Gpio.c"
Source="source\DSP280x_MemCopy.c"
Source="source\DSP280x_PieCtrl.c"
Source="source\DSP280x_PieVect.c"
Source="source\DSP280x_Sci.c"
Source="source\DSP280x_SysCtrl.c"
Source="source\DSP280x_usDelay.asm"
Source="source\JP3.c"
Source="cmd\DSP280x_Headers_nonBIOS.cmd"
Source="cmd\F2801.cmd"

["Compiler" Settings: "Debug"]
Options=-g -q -fr"c:\ti\myprojects\JP3\Debug" -i"..\include" -d"_DEBUG" -d"LARGE_MODEL" -ml -v28

["Compiler" Settings: "Release"]
Options=-q -o3 -fr"c:\ti\myprojects\JP3\Release" -i"..\include" -d"LARGE_MODEL" -ml -v28

["DspBiosBuilder" Settings: "Debug"]
Options=-v28

["DspBiosBuilder" Settings: "Release"]
Options=-v28

["Linker" Settings: "Debug"]
Options=-q -c -m".\Debug\JP3.map" -o".\Debug\JP3.out" -x -i".\cmd"

["Linker" Settings: "Release"]
Options=-q -c -m".\Release\JP3.map" -o".\Release\JP3.out" -x

Can someone please help me? I am new to code composer... :)

is it at all possible to import a version 3.1 project into the version 4.0 IDE? If so, did I miss something?

 

Thanks

  • The linker error you are getting:

    fatal error: file "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/lib/rts2800.lib<boot.obj>" has a
       Tag_Memory_Model attribute value of "1" that is different than one previously seen ("2"); combining incompatible files

    means that the runtime library linked in the project rts2800.lib has a diferent memory model than the rest of the object files.

    As you can see the project has the LARGE_MODEL option (-ml) enabled, as a result the rts2800_ml.lib library should be linked in instead. In your CCS v4 Project Properties->CCS Build Settings , change the Runtime Support Library from rts2800.lib to rts2800_ml.lib, and rebuild the project.

  • Aarti, thanks for your reply...

    When I open Project Properties->CCS Build Settings, the Runtime Support Library field is empty. I then selected rts2800_ml.lib and click on Apply in the same window, it brings up a window 'Save Build Config Settings'. I select 'Apply changes to existing build config' and nothing else. Then I hit OK. I get a warning window 'Problems encountered while initalizing build-configuraiton 'Debug' of project JP3. Please see the migration.log file in the root of the project, for details. I then hit OK and then do Rebuild All. I still get the same build error.

    is there a number I can reach you at?

     

  • Dennis,

    Can you zip up your complete CCS 3.1 project and associated files, and email it to the TI support email address? I'll take a look at it first and try to do the conversion myself.

  • Aarti,

    Could please post your findingsfrom doing the conversion? I have been trying to convert the video_preview example from dvSDK 1.11 to work in CCSv4 for the past week. I have gone through and made sure it has the right include paths. When I try to build I get these Undefined Symbols even though I have there directories included:

     

     undefined             first referenced     
      symbol                   in file          
     ---------             ----------------     
     _I2CMD_FXNS                     ./video_previewcfg.obj
     _PAL_sysModuleClkCtrl    ./video_preview.obj  
     _PAL_sysPinmuxEnable   ./video_preview.obj  
     _TVP5154_Fxns                  ./video_preview.obj  
     _VPORTCAP_Fxns             ./video_previewcfg.obj
     _VPORTDIS_Fxns              ./video_previewcfg.obj
     _edcEncoder_Fxns            ./video_preview.obj  
     _edma3init                          ./video_preview.obj  
     _hEdma                               ./video_preview.obj

    Any Help would be appreciated. Thanks

    Daniel

     

  • In Dennis's test case there was a problem with the conversion of the "Release" configuration only. The Debug configuration converted and built ok once the appropriate runtime library (rt2800_ml.lib) was added to the project, but there was still an issue with the Release configuration which we had to work around by making a copy of the Debug configuration and modifying the build options to match with the Release config (ie basically creating a new Release config).

    The "undefined symbol" errors you are getting seem to point to missing objects or libraries that contain definitions for those symbols. Can you make sure the appropriate libraries appear in the build command line for the link step?

  • I'm pretty sure I have the appropriate libraries in the build comman line for the link step. For example the _VPORTDIS_Fxns symbol should be defined by this statement:

    IOM_Fxns VPORTDIS_Fxns =
    {
        mdBindDev,
        (IOM_TmdUnBindDev)IOM_mdNotImpl,
        mdControlChan,
        mdCreateChan,
        mdDeleteChan,
        mdSubmitChan
    };

    That statement is found in C:\Program Files\Texas Instruments\dvsdk_1_11_00_00_DM648\pspdrivers_1_10_00\packages\ti\sdo\pspdrivers\drivers\vport\src\vportdis.c

    And this:

    extern IOM_Fxns VPORTDIS_Fxns;

    Which is in C:\Program Files\Texas Instruments\dvsdk_1_11_00_00_DM648\pspdrivers_1_10_00\packages\ti\sdo\pspdrivers\drivers\vport\vportdis.h

    Here are the lines in my command line for the link step that I have tried to no avail:

    -i"C:/Program Files/Texas Instruments/dvsdk_1_11_00_00_DM648/pspdrivers_1_10_00/packages/ti/sdo/pspdrivers/drivers/vport"

    -i"C:/Program Files/Texas Instruments/dvsdk_1_11_00_00_DM648/pspdrivers_1_10_00/packages/ti/sdo/pspdrivers/drivers/vport/lib/dm648/Debug"

    -i"C:/Program Files/Texas Instruments/dvsdk_1_11_00_00_DM648/pspdrivers_1_10_00/packages/ti/sdo/pspdrivers/drivers/vport/lib"

  • Hi,

    Is there a TMS320F2801 example project folder for Code composer v4 somewhere that I can build?

    Thanks,

     

    K

  • The C280x, C2801x C/C++ Header Files and Peripheral Examples download now contains example projects for CCS v4
    http://focus.ti.com/docs/toolsw/folders/print/sprc191.html

  • It gives me an error when I try compiling the GPIO toggle project that says:

    "could not open source file "DSP280x_Adc.h"

    How do I add C:\tidcs\c28\DSP280x\v170\DSP280x_headers

    to this project once it has been opened?

     

    Cheers

  • If you are in CCSv4 you should just be able to right click on the project name on the left and click on properties. Then C/C++ Build then Include Options under the Tool Settings tab. You can add include directories there.

  • thanks, but there is no tool settings tab under C/C++ build all I get is this screen