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.

TI-RTOS : TI Compiler to GNU compiler

I have a copiled a TI-RTOS project in CCS6.1 with TI Compiler and now i want to use the open source GNU Compiler (Red Hat). I have changed the setting like in documentation but i have this errors:

**** Build of configuration Release__GNU for project Project1 ****

"C:\\ti\\ccsv6\\utils\\bin\\gmake" -k all 
'Building file: ../Project1.c'
'Invoking: GNU Compiler'
"C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105/bin/msp430-elf-gcc.exe" -c -mmcu=msp430f5438a -I"C:/ti/ccsv6/ccs_base/msp430/include_gcc" -I"C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105/msp430-elf/include" -O2 -Os -Wall -mlarge -mhwmult=f5series -mcode-region=none -mdata-region=none -MMD -MP -MF"Project1.d" -MT"Project1.o" -o"Project1.o" @"configPkg/compiler.opt" "../Project1.c"
subdir_rules.mk:7: recipe for target 'Project1.o' failed
msp430-elf-gcc.exe: error: unrecognized command line option '-vmspx'
msp430-elf-gcc.exe: error: unrecognized command line option '--near_data=none'
msp430-elf-gcc.exe: error: unrecognized command line option '--code_model=large'
msp430-elf-gcc.exe: error: unrecognized command line option '--data_model=restricted'
gmake: *** [Project1.o] Error 1
'Building file: ../gpiointerrupt.c'
'Invoking: GNU Compiler'
"C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105/bin/msp430-elf-gcc.exe" -c -mmcu=msp430f5438a -I"C:/ti/ccsv6/ccs_base/msp430/include_gcc" -I"C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105/msp430-elf/include" -O2 -Os -Wall -mlarge -mhwmult=f5series -mcode-region=none -mdata-region=none -MMD -MP -MF"gpiointerrupt.d" -MT"gpiointerrupt.o" -o"gpiointerrupt.o" @"configPkg/compiler.opt" "../gpiointerrupt.c"
subdir_rules.mk:7: recipe for target 'gpiointerrupt.o' failed
msp430-elf-gcc.exe: error: unrecognized command line option '-vmspx'
msp430-elf-gcc.exe: error: unrecognized command line option '--near_data=none'
msp430-elf-gcc.exe: error: unrecognized command line option '--code_model=large'
msp430-elf-gcc.exe: error: unrecognized command line option '--data_model=restricted'
gmake: *** [gpiointerrupt.o] Error 1
'Building file: ../gpiointerrupt.cfg'
'Invoking: XDCtools'
"C:/ti/xdctools_3_32_00_06_core/xs" --xdcpath="C:/ti/tirtos_msp43x_2_16_01_14/packages;C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages;C:/ti/tirtos_msp43x_2_16_01_14/products/tidrivers_msp43x_2_16_01_13/packages;C:/ti/tirtos_msp43x_2_16_01_14/products/uia_2_00_05_50/packages;C:/ti/ccsv6/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.msp430.elf.MSP430X -p ti.platforms.msp430:MSP430F5438 -r debug -c "C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105" "../gpiointerrupt.cfg"
making package.mak (because of package.bld) ...
ti.targets.msp430.elf.MSP430X: warning: exec of 'C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105/bin/cl430 --compiler_revision' failed:java.io.IOException: Cannot run program "C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105/bin/cl430" (in directory "."): CreateProcess error=2, The system cannot find the file specified; check tools installation
ti.targets.msp430.elf.MSP430X: warning: exec of 'C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105/bin/cl430 --compiler_revision' failed:java.io.IOException: Cannot run program "C:/ti/ccsv6/tools/compiler/gcc_msp430_5.3.0.105/bin/cl430" (in directory "."): CreateProcess error=2, The system cannot find the file specified; check tools installation
configuring gpiointerrupt.xe430X from package/cfg/gpiointerrupt_pe430X.cfg ...
subdir_rules.mk:14: recipe for target 'configPkg/linker.cmd' failed
js: "C:/ti/xdctools_3_32_00_06_core/packages/xdc/cfg/Main.xs", line 167: Error: xdc.cfg.INCOMPATIBLE_TARGET_VERSION: the compiler version [] used by the current target 'ti.targets.msp430.elf.MSP430X' is not compatible with compiler version of targets used to build the following packages; package ti.catalog.msp430.init [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/catalog/msp430/init/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.targets.msp430.rts430 [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/targets/msp430/rts430/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.sysbios.family.msp430 [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/sysbios/family/msp430/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.sysbios.knl [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/sysbios/knl/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.sysbios.hal [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/sysbios/hal/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.sysbios [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/sysbios/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.tirtos.utils [in C:/ti/tirtos_msp43x_2_16_01_14/packages/ti/tirtos/utils/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.sysbios.gates [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/sysbios/gates/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.sysbios.xdcruntime [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/sysbios/xdcruntime/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].
; package ti.sysbios.utils [in C:/ti/tirtos_msp43x_2_16_01_14/products/bios_6_45_02_31/packages/ti/sysbios/utils/] was built using the target 'ti.targets.msp430.elf.MSP430X' with compiler version [4.4.2].

Adding the following line to your program configuration script:
	environment['xdc.cfg.check.fatal'] = 'false';
converts this incompatibility error into a warning. Please, check the documentation for the package xdc.cfg for more information.
gmake.exe: *** [package/cfg/gpiointerrupt_pe430X.xdl] Error 1
js: "C:/ti/xdctools_3_32_00_06_core/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
gmake: *** [configPkg/linker.cmd] Error 1
gmake: Target 'all' not remade because of errors.

**** Build Finished ****

The error comes from subdir_rules.mk

  • We only support the Linaro GNU tools that ship with CCS.

    However, you might be more successful if you start by importing an example project that uses the CCS-provided GNU tools and then see if you can modify it to point to your GNU tools. That way the compiler command line options will be more compatible.

    Alan