TI E2E Community (Beta)
Welcome to the TI E2E (Engineer-to-Engineer) Community! We invite you to freely and openly interact with your peer Engineers, TI Engineers, and other experts in order to ask questions, share knowledge, explore ideas, and help solve problems.
More Search Options

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

rated by 0 users
Not Answered This post has 0 verified answers | 11 Replies | 4 Followers

Not Ranked
2 Posts
Community Member
Dennis C posted on 8 Sep 2009 7:34 PM

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

All Replies

Top 25 Contributor
197 Posts
Texas Instruments Employee

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.

Not Ranked
2 Posts
Community Member

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?

 

Top 25 Contributor
197 Posts
Texas Instruments Employee

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.

Not Ranked
14 Posts
Community Member

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

 

Top 25 Contributor
197 Posts
Texas Instruments Employee

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?

Not Ranked
14 Posts
Community Member

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"

Not Ranked
8 Posts
Community Member

Hi,

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

Thanks,

 

K

Top 25 Contributor
197 Posts
Texas Instruments Employee

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

Not Ranked
8 Posts
Community Member

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

Not Ranked
14 Posts
Community Member

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.

Not Ranked
8 Posts
Community Member

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

Page 1 of 1 (12 items) |

ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". TI AND ITS RESPECTIVE SUPPLIERS MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY OF THESE MATERIALS FOR ANY PURPOSE AND DISCLAIM ALL WARRANTIES AND CONDITIONS WITH REGARD TO THESE MATERIALS, INCLUDING BUT NOT LIMITED TO, ALL IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL PROPERTY RIGHT. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY TI. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI and its suppliers reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.