Redefinition error

I have followed the installation steps described in the video in the link: Installing TI C2000 Target Support Package | Plexim

I have successfully designed a small blink led design and its getting simulated in Plecs but while coming to the build options in the coder section i’m getting the below error. Please help to overcome the error.

Error in build step #10 (Make): Make process exited with code 2:
“C:/Users/yoges/OneDrive/Documents/Plexim/PLECS 4.9 (64 bit)/make/make” -f Blinky_F280039C.mk clean
make[1]: Entering directory ‘C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Design files/Blinky_F280039C_codegen’
mkdir .\output_TI28003x
make[1]: Leaving directory ‘C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Design files/Blinky_F280039C_codegen’
type nul > “Blinky_F280039C.mk.uptodate”
“C:/Users/yoges/OneDrive/Documents/Plexim/PLECS 4.9 (64 bit)/make/make” -f Blinky_F280039C.mk clean
make[1]: Entering directory ‘C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Design files/Blinky_F280039C_codegen’
del /F /Q “.\output_TI28003x\*.*”
make[1]: Leaving directory ‘C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Design files/Blinky_F280039C_codegen’
“C:/Users/yoges/OneDrive/Documents/Plexim/PLECS 4.9 (64 bit)/make/make” -f Blinky_F280039C.mk ./output_TI28003x/Blinky_F280039C.elf
make[1]: Entering directory ‘C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Design files/Blinky_F280039C_codegen’
“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/ti-cgt-c2000_25.11.0.LTS/bin”/cl2000 -D_PLEXIM_ -DCPU1 -DBASE_NAME=Blinky_F280039C -DEXTERNAL_MODE=1 -fr./output_TI28003x -fs./output_TI28003x -v28 -ml -mt --float_support=fpu32 --fp_mode=relaxed --float_operations_allowed=all -O0 --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/app” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/../pil” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/../shrd” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/../inc” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/inc_impl” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/tiinc” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/tiinc/driverlib” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/ti-cgt-c2000_25.11.0.LTS/include” --include_path=“./” -g --symdebug:dwarf_version=3 --abi=eabi --cla_support=cla2 --tmu_support=tmu0 --c11 --printf_support=full --preproc_dependency=output_TI28003x/Blinky_F280039C_hal.d “Blinky_F280039C_hal.c”
“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/ti-cgt-c2000_25.11.0.LTS/bin”/cl2000 -D_PLEXIM_ -DCPU1 -DBASE_NAME=Blinky_F280039C -DEXTERNAL_MODE=1 -fr./output_TI28003x -fs./output_TI28003x -v28 -ml -mt --float_support=fpu32 --fp_mode=relaxed --float_operations_allowed=all -O0 --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/app” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/../pil” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/../shrd” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/../inc” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/inc_impl” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/tiinc” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/tiinc/driverlib” --include_path=“C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/ti-cgt-c2000_25.11.0.LTS/include” --include_path=“./” -g --symdebug:dwarf_version=3 --abi=eabi --cla_support=cla2 --tmu_support=tmu0 --c11 --printf_support=full Blinky_F280039C_hal.c

Compilation failure
Blinky_F280039C.mk:300: recipe for target ‘output_TI28003x/Blinky_F280039C_hal.obj’ failed
make[1]: Leaving directory ‘C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Design files/Blinky_F280039C_codegen’
Blinky_F280039C.mk:164: recipe for target ‘all’ failed

“C:\Users\yoges\Plexim Plecs Standalone 4.9.5 (x64)\Installation Files\2. PLECS TI C2000 SUPPORT PACKAGE\tsp_ti_c2000_V1.9.2\ccs\28003x\tiinc\driverlib\inc/hw_types.h”, line 80: warning: typedef name has already been declared (with same type)
“C:\Users\yoges\Plexim Plecs Standalone 4.9.5 (x64)\Installation Files\2. PLECS TI C2000 SUPPORT PACKAGE\tsp_ti_c2000_V1.9.2\ccs\28003x\tiinc\driverlib\inc/hw_types.h”, line 81: warning: typedef name has already been declared (with same type)
“C:\Users\yoges\Plexim Plecs Standalone 4.9.5 (x64)\Installation Files\2. PLECS TI C2000 SUPPORT PACKAGE\tsp_ti_c2000_V1.9.2\ccs\28003x\tiinc\driverlib\cpu.h”, line 61: error: declaration is incompatible with “volatile unsigned int IFR” (declared at line 55 of “C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/tiinc/f28003x_device.h”)
“C:\Users\yoges\Plexim Plecs Standalone 4.9.5 (x64)\Installation Files\2. PLECS TI C2000 SUPPORT PACKAGE\tsp_ti_c2000_V1.9.2\ccs\28003x\tiinc\driverlib\cpu.h”, line 68: error: declaration is incompatible with “volatile unsigned int IER” (declared at line 56 of “C:/Users/yoges/Plexim Plecs Standalone 4.9.5 (x64)/Installation Files/2. PLECS TI C2000 SUPPORT PACKAGE/tsp_ti_c2000_V1.9.2/ccs/28003x/tiinc/f28003x_device.h”)
“C:\Users\yoges\Plexim Plecs Standalone 4.9.5 (x64)\Installation Files\2. PLECS TI C2000 SUPPORT PACKAGE\tsp_ti_c2000_V1.9.2\ccs\28003x\tiinc\driverlib\interrupt.h”, line 532: warning: declaration hides built-in function “__disable_interrupts”
“C:\Users\yoges\Plexim Plecs Standalone 4.9.5 (x64)\Installation Files\2. PLECS TI C2000 SUPPORT PACKAGE\tsp_ti_c2000_V1.9.2\ccs\28003x\tiinc\driverlib\interrupt.h”, line 533: warning: declaration hides built-in function “__enable_interrupts”
2 errors detected in the compilation of “Blinky_F280039C_hal.c”.
make[1]: *** [output_TI28003x/Blinky_F280039C_hal.obj] Error 1

make: *** [all] Error 2

Note: I dont want to upgrade the plecs version to 5.0.x or any new. I want to continue with the version which i installed.

Hi Yogesh,

Thanks for sharing the logs. The compiler you have installed, ti-cgt-c2000_25.11.0.LTS, is newer than the C2000-CGT version specified in our documentation for the TI C2000 TSP. The documentation specifies v22.6.0.LTS.

As a first step, could you install C2000-CGT v22.6.x LTS alongside your current compiler, point PLECS to that version under Coder → C2000 Target Options → Compiler Installation Path, and then retry the build?

I also want to point out that TSP v1.9.2 is a legacy release and we no longer provide support for it. We strongly recommend upgrading to the latest TSP, along with the corresponding PLECS version it requires, as the newer release includes various bug fixes and feature enhancements.

Hope this helps!

Hi Ahmed,

Thank you for your support,

I had made changes in make file and selected the required compiler version. After that i got IER & IDE redefinition errors so I have commented them in tiinc>driverlib>cpu.h. Then my desing got build successfully without any errors.

Now after flashing the program i unable to see change in GPIO output pin in DSO. Even I have tried by chaging the build type to Generate code into CCS project, there while debugging I found there is change in hardware GPIO registers which are not affecting at hardware.

Please give me your suggestions to overcome this?

Note:- The pin connection (MCU → DSO) is correct and verified with other program developed from CCS on my own.

I’ll respond while Munadir is out of the office. I actually rolled back to PLECS 4.9.8 and Target Support Package (TSP) version 1.9.2. The basic demo models worked and I can toggle a GPIO (blinking LED) on the 28003x LaunchPad. This rules out something fundamental in the TSP which is unlikely.

I see a few possibilities:

  • What is the output characteristic you set for the Digital Out block? Is it “Push-pull” or “Open drain”? If open drain - do you have a pull up?
  • One should not need to tweak the make files and manipulate driverlib files. Your edits might have interfered with the operation of the TSP, so go back to the recommended CGT version and change it in the TSP settings as Munadir noted.
    One of the key features of the TSP is that it should work largely “out of the box” when the correct tooling is used (the essential tooling ships with the TSP itself and can be installed as part of the TSP installation).
  • The specific GPIO you have chosen has some other restriction with it. You are welcome to post a model if there’s something else more subtle happening.

I’ll also note that even with 4.9 PLECS License, you still can upgrade to 4.9.8 (Last bugfix release of version 4.9) and version TSP version 2.2.3 (download link) which has several new features (HRPWM and F29H85x with Dual Core support).

We also do not recommend installing the Target Support Packages into a network/share folder. You have installed yours in your OneDrive directory. It should be a local file on your PC not in OneDrive.