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.

Compile issues switching from v3.3 program to v4.1

Other Parts Discussed in Thread: CCSTUDIO

I am attempting to compile with out errors a v3.3 code composer program for the pulse ox analog front end with a EVM5515.  I can run the canned *.out file, but I cannot get the code to compile in the v4 CCS.  I have visited the FAQ Wiki, and fixed some issues, but the std.h fix is not working for me and I get a gmake error that I don't see a solution too.  The gmake error is as follows:

**** Build of configuration Debug for project SpO2 ****

C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake -k all

C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** No rule to make target `C:/CCStudio_v3.3/C5500/cgtools/lib/rts55x.lib', needed by `SpO2.out'.

'Building file: ../src/pal_osSem.c'

'Invoking: Compiler'

"C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/c5500/bin/cl55" -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/c5500/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --preinclude="C:/Program Files (x86)/Texas Instruments/bios_5_41_02_14/packages/ti/bios/include/std.h" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/pal_osSem.pp"  "../src/pal_osSem.c"

"../src/pal_osSem.c", line 44: fatal error: could not open source file "std.h"

1 fatal error detected in the compilation of "../src/pal_osSem.c".

Compilation terminated.

For the include issue this is the error below.  I know the location of the file(s), but the Wiki instructions did not fix it.  I have the same issue with trc.h

../src/pal_osWait.c", line 42: fatal error: could not open source file "std.h"

1 fatal error detected in the compilation of "../src/pal_osWait.c".

Compilation terminated.

 

>> Compilation failure

Any help would be most appreciated.

James McPherson - CTO Leo Technologies 

 

  • Hi James,

    std.h is specific to CCS3.3.

    Try commenting #include <std.h> and instead use #include "tistdtypes.h" (attached).

    6507.tistdtypes.h

    Hope this helps,
    Mark 

  • Thank you so much Mark.  That did fix the std.h error.  I still have the gmake issue, and after the std.h fix there are four more include files that it can't find: hwi.h, sem.h, trc.h, and tsk.h.  Commenting sem.h caused another error.  Any other thoughts on how to fix this?  Thanks again for your help.

     

    James

  • Hi James,

    I downloaded the SpO2 MDK project from http://c5505-ezdsp.googlecode.com/files/MDK_SpO2System_C5515EVMa.zip

    BIOS include path was missing, and the path should come after common_inc in the file search path list.

    My BIOS path - <CCSv4 install dir>\bios_5_41_10_36\packages\ti\bios\include

    You should probably use BIOS 5.33.06 (see link to BIOS download below)

    The project already has tistdtypes.h in common_inc - use that one and disregard the tistdtypes.h file I previously attached... The file in common_inc has additional defines for "TRUE" and "FALSE"

    After Importing the CCS3.3 project, open the project Build Properties...
    * Under C5500 Compiler --> Include Options:
       - Delete "${XDAIS_CG_ROOT}/packages/ti/xdais"
       - Delete "${C5500_CSL_CG_ROOT}/lib" (CCS 3.3 macro)
       - Add path to bios_5_33_06\packages\ti\bios\include
       - Move new BIOS include path to bottom of search list so that tistdtypes.h from common_inc is used
       - This tistdtypes.h defines FALSE and TRUE for Bool variables

    * Under C5500 Linker --> File Search Path:
       - Delete "${C5500_CSL_CG_ROOT}/include"

    The release notes say Codegen version 3.3.6 should be used... I got it to build with 4.3.9 but it may need 3.3.6
    You can download CGT 3.3.6 from https://www-a.ti.com/downloads/sds_support/CodeGenerationTools.htm
    Under Macros tab, you can create a new macro called "CG_TOOL_ROOT" and pass the path to CG_Tools after downloading
    This macro variable will override the System Macro...

    If the project was built using CGT 3.3.6, then it was probably also built with BIOS 5.33.06... I got it to build with BIOS 5.41.00.06
    You can get BIOS 5.33.06 from http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dspbios/index.html

    Hope this helps,
    Mark

    [EDIT - BIOS 5.33.06]

  • Thank you Mark, that helps a great deal!

     

    James

  • Hi Mark, so I done all of the above except for setting up the macro.  Where can I find the "Macros tab"?  I still get all 5 errors when i try to build with my CGT 4.3.9  version.  Will using 3.3.6 version finally fix this?

     

    James

  • Mark, I have it building under the 3.3.6 CGT.  I have performed all of the steps above.  I had visited the Wiki before I reached out to the community.  I still get the following 5 errors:

    Severity and Description Path Resource Location Creation Time Id C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** No rule to make target `C:/CCStudio_v3.3/C5500/cgtools/lib/rts55x.lib', needed by `SpO2.out'.  SpO2 Unknown 1364832761729 295

    Severity and Description Path Resource Location Creation Time Id could not open source file "hwi.h" SpO2/src pal_osprotect.c line 46 1364832761744 308

    Severity and Description Path Resource Location Creation Time Id could not open source file "sem.h" SpO2/src pal_osSem.c line 48 1364832761744 305

    Severity and Description Path Resource Location Creation Time Id could not open source file "trc.h" SpO2/src pal_osTime.c line 45 1364832761744 306

    Severity and Description Path Resource Location Creation Time Id could not open source file "tsk.h" SpO2/src pal_osWait.c line 44 1364832761744 307

    None of these errors are mentioned in the Wiki.  I have with your help resolved all of those.  Perhaps some context will help.  I am with a new start up company looking to design a consumer product.  I am looking at putting a lot of TI IC's in this device from Op Amps to a Bluetooth LE chip.  If all goes well we are talking quite high volumes.  If I can get this DSP EVM working with the Analog Front End then it will shave months off the development of the product, and lock TI in as the major IC supplier.  Again please help.  My background is in hardware, and my C programming experience was long ago.  Thanks in advance.

     

    James McPherson

    CTO Leo Technologies

    Boulder Colorado

     

     

     

  • Hi James,

    I dont think CGT 3.3.6 will resolve those errors because I am able to build with CGT 4.3.9 and 3.3.6 without erros - it must be an include path missing or in bad order. If you cannot get the errors resolved, copy and paste the console for one of the files thowing errors like I have done below for I2C_SpO2.c...

    "C:/CCSv4/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -vcpu:3.3 -g --define="_DEBUG" --include_path="C:/CCSv4/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --include_path="C:/CCSv4/bios_5_41_10_36/packages/ti/bios/include" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/I2C_SpO2.pp" "../src/I2C_SpO2.c"

    I have also put screen shots of my Build Properties and the Macros tab for your reference.

    Hope this helps,
    Mark

  • Thank you mark.  I didn't have the tool root include at the top, that might help a lot.  I DO NOT have the rts55x.lib file loaded in the file search path part.  Where can I find it?  It does not appear to be with the libraries I have so far.

  • Hi James,

    rts55x.lib is in the CGT lib directory.

    In the Linker File Search Path - ${CG_TOOL_ROOT}/lib

    CG_TOOL_ROOT is defined under the Macros tab.

    Hope this helps,
    Mark 

  • OK sceen shots of my set up are below.  I went back to CGT 4.3.9, but I don't think that is the issue.  Still getting the same errors related to rts55x.lib.  I can see the file down in the tool directory, but it can't open it.  After the screen shots is a past from the console of one of the files throwing the error.

  • Here is the code, working on the screen shots:

     

    Compilation failure

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** [pal_osTime.obj] Error 1

    'Building file: ../src/pal_osWait.c'

    'Invoking: Compiler'

    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/pal_osWait.pp"  "../src/pal_osWait.c"

    "../src/pal_osWait.c", line 44: fatal error: could not open source file "tsk.h"

    1 fatal error detected in the compilation of "../src/pal_osWait.c".

    Compilation terminated.

    >> Compilation failure

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** [pal_osWait.obj] Error 1

    'Building file: ../src/pal_osprotect.c'

    'Invoking: Compiler'

    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/pal_osprotect.pp"  "../src/pal_osprotect.c"

    "../src/pal_osprotect.c", line 46: fatal error: could not open source file "hwi.h"

    1 fatal error detected in the compilation of "../src/pal_osprotect.c".

    Compilation terminated.

    >> Compilation failure

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** [pal_osprotect.obj] Error 1

    'Building file: ../src/util_circ.c'

    'Invoking: Compiler'

    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/util_circ.pp"  "../src/util_circ.c"

    'Finished building: ../src/util_circ.c'

    ' '

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.

    Build complete for project SpO2

  •  

     

                         

     

    Well I can't seem to get the screen shots to past, but I have things set up identical to you, using the CGT 4.3.9 tools...

     

    James

     

  • You are not correctly including BIOS include dir in the compiler search path - this is the reason for the fatal error: could not open source file "hwi.h", etc

    You should have deleted the XDAIS dir path from the compiler search path - it is not used here and included when importing

    You're also not specifying silicon version in the build properties (-v cpu:3.3) - it is needed by tools and should have been imported from CCS3.3 project by CCS 4.x... See the screenshot at the bottom of this post.

    James McPherson said:
    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/pal_osWait.pp"  "../src/pal_osWait.c"

    Your compiler console output broken down by each argument...

    C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55"

    -g

    --define="_DEBUG"

    --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include"

    --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" - Delete the XDAIS path from the Build Properties --> Compiler

    --include_path="/include" - macro for BIOS did not work? This path is invalid as is. Try replacing with the full file path to the BIOS include dir (Mine is C:/CCSv4/bios_5_41_10_36/packages/ti/bios/include)

    --include_path="../inc"

    --include_path="../common_inc"

    --include_path="../src"

    --include_path="../common_src"

    --diag_warning=225

    --large_memory_model

    --algebraic

    --preproc_with_compile

    --preproc_dependency="src/pal_osWait.pp"

    "../src/pal_osWait.c"

    Compare with my console break down that works:

    "C:/CCSv4/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55"

    -vcpu:3.3

    -g

    --define="_DEBUG"

    --include_path="C:/CCSv4/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include"

    --include_path="../inc"

    --include_path="../common_inc"

    --include_path="../src"

    --include_path="../common_src"

    --include_path="C:/CCSv4/bios_5_41_10_36/packages/ti/bios/include"

    --diag_warning=225

    --large_memory_model

    --algebraic

    --preproc_with_compile

    --preproc_dependency="src/pal_osWait.pp"

    "../src/pal_osWait.c"

    Screen shot showing where to configure silicon version:

    Hope this helps,
    Mark 

  • OK Mark I have implemented everything you pointed out.  I actually deleted the project and Imported it so I could start from scratch.  I still get the same errors.  Here are the steps I took:

    1. Added "cpu:3.3" under basic options.  It looks the same as you screen shot above
    2. Deleted "${XDAIS_CG_ROOT}/packages/ti/xdais" from the include options
    3. Deleted "${C5500_CSL_CG_ROOT}/lib" from include options
    4. Moved "${CG_TOOL_ROOT}/include" to the top of the list in include options
    5. Added the bios include path and moved it to the bottom of the list.  My installed path is: C:\Program Files (x86)\Texas Instruments\bios_5_41_02_14\packages\ti\bios\include      I can see that the file tistdtypes.h is there in the directory.
    6. Fixed the Linker search path by deleteing "${C5500_CSL_CG_ROOT}/include", and typed in the file name rts55x.lib in to the include library file portion.
    7. Made sure there was a macro CG_TOOL_ROOT that points to C:\Program Files (x86)\Texas Instruments\ccsv4\tools\compiler\C5500 Code Generation Tools 4.3.9
    8. Commented out std.h everywhere it gave me an error.
    9. Added tistdtypes.h in this like this in the same places:  #include "tistdtypes.h"

    After all this I still get the same 5 errors.  I hope this helps you figure out what I am doing wrong.  I have attached a word doc with screen shots of how I have set everything up.  Thank you.

    James

    6303.Screen shots.docx

     

  • Hi James,

    James McPherson said:
    • Commented out std.h everywhere it gave me an error.
    • Added tistdtypes.h in this like this in the same places:  #include "tistdtypes.h"

    You should not have to do these steps to get the project built.

    Can you paste the console again for these errors?

    I have attached my project for you to try. Make sure the .cmd file is not erased by virus scanner and you will have to enter your directory paths into the Project Build Properties.

    8132.SpO2.zip

    Hope this helps,
    Mark 

  • Thank you Mark, I undid the std.h commenting etc.  Then I rebuilt the project, the contents of the Console are pasted below.

    **** Build of configuration Debug for project SpO2 ****

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake -k all

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** No rule to make target `C:/CCStudio_v3.3/C5500/cgtools/lib/rts55x.lib', needed by `SpO2.out'.

    'Building file: ../src/pal_osSem.c'

    'Invoking: Compiler'

    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -vcpu:3.3 -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/pal_osSem.pp"  "../src/pal_osSem.c"

    "../src/pal_osSem.c", line 44: fatal error: could not open source file "std.h"

    1 fatal error detected in the compilation of "../src/pal_osSem.c".

    Compilation terminated.

    >> Compilation failure

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** [pal_osSem.obj] Error 1

    'Building file: ../src/pal_osTime.c'

    'Invoking: Compiler'

    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -vcpu:3.3 -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/pal_osTime.pp"  "../src/pal_osTime.c"

    "../src/pal_osTime.c", line 44: fatal error: could not open source file "trc.h"

    1 fatal error detected in the compilation of "../src/pal_osTime.c".

    Compilation terminated.

    >> Compilation failure

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** [pal_osTime.obj] Error 1

    'Building file: ../src/pal_osWait.c'

    'Invoking: Compiler'

    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -vcpu:3.3 -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/pal_osWait.pp"  "../src/pal_osWait.c"

    "../src/pal_osWait.c", line 42: fatal error: could not open source file "std.h"

    1 fatal error detected in the compilation of "../src/pal_osWait.c".

    Compilation terminated.

    >> Compilation failure

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** [pal_osWait.obj] Error 1

    'Building file: ../src/pal_osprotect.c'

    'Invoking: Compiler'

    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55" -vcpu:3.3 -g --define="_DEBUG" --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include" --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais" --include_path="/include" --include_path="../inc" --include_path="../common_inc" --include_path="../src" --include_path="../common_src" --diag_warning=225 --large_memory_model --algebraic --preproc_with_compile --preproc_dependency="src/pal_osprotect.pp"  "../src/pal_osprotect.c"

    "../src/pal_osprotect.c", line 43: fatal error: could not open source file "std.h"

    1 fatal error detected in the compilation of "../src/pal_osprotect.c".

    Compilation terminated.

    >> Compilation failure

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: *** [pal_osprotect.obj] Error 1

    C:\Program Files (x86)\Texas Instruments\ccsv4\utils\gmake\gmake: Target `all' not remade because of errors.

    Build complete for project SpO2

  • James,

    I hate to sound like a broken record, but the console still shows the broken BIOS path and still includes XDAIS path...

    "C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/bin/cl55"

    -vcpu:3.3

    -g

    --define="_DEBUG"

    --include_path="C:/Program Files (x86)/Texas Instruments/ccsv4/tools/compiler/C5500 Code Generation Tools 4.3.9/include"

    --include_path="C:/Program Files (x86)/Texas Instruments/xdais_6_25_01_08/packages/ti/xdais"

    --include_path="/include"

    --include_path="../inc"

    --include_path="../common_inc

    " --include_path="../src"

    --include_path="../common_src"

    --diag_warning=225

    --large_memory_model

    --algebraic

    --preproc_with_compile

    --preproc_dependency="src/pal_osSem.pp" 

    "../src/pal_osSem.c"


    The screen shots in the .doc file and the console output do not match... You can see what the console should look like if you click on 'C5500 Compiler' in the build ..

    .

    Hope this helps,
    Mark 

  • I don't know what to tell you.  Those screen shots were taken right after the build.  Is there anywhere else that the XDIAS is called out?

     

    James

  • OK below is a screen shot to match you last one...

    3821.screen2.docx


  • Thank you again for you help Mark.  I  imported your project and got it to build with no problem.  I an starting to think that the issue is with the project that was on the CD with the SPO2 analog front end.  Thanks so much again for your support!

     

    James McPherson

  • Hi James,

    Glad you got it working!

    It is best to get the Pulse Ox software from http://code.google.com/p/c5505-ezdsp/ instead of from the CD.

    Regards,
    Mark