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.

error #16008-D

We are using the F28M35H52C1 processor and had code working on the C28 side of the processor.  We are using CCS 5.4.0.  We updated the compiler to v6.1.4 and now we get linker errors, "error #16008-D: file "./F28M35x_common/source/F28M35x_DefaultIsr.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C28FPU32" specified in a previous file or on the command line", or "error #16008-D: file "./F28M35x_common/source/F28M35x_DMA.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line".

How do you figure out which is the offending file or where on the command line?  We are using <automatic> to select the runtime support library.

 

Here is the entire CDT output.

 

**** Build of configuration Debug for project ServoControl ****

 

"C:\\ti\\ccsv5\\utils\\bin\\gmake" -k all

'Building target: ServoControl.out'

'Invoking: C2000 Linker'

"C:/ti/ccsv5/tools/compiler/c2000_6.1.4/bin/cl2000" -v28 -ml -mt --float_support=fpu32 --vcu_support=vcu0 -g --gen_acp_raw --diag_warning=225 --display_error_number --diag_wrap=off -z --stack_size=0x300 -m"ServoControl.map" --warn_sections -i"C:/ti/ccsv5/tools/compiler/c2000_6.1.4/include" -i"C:/ti/ccsv5/tools/compiler/c2000_6.1.4/lib" --reread_libs --verbose_diagnostics --display_error_number --diag_wrap=off --xml_link_info="ServoControl.xml" --rom_model -o "ServoControl.out"  "./F28M35x_common/source/F28M35x_usDelay.obj" "./F28M35x_common/source/F28M35x_TempSensorConv.obj" "./F28M35x_common/source/F28M35x_SysCtrl.obj" "./F28M35x_common/source/F28M35x_Spi.obj" "./F28M35x_common/source/F28M35x_Sci.obj" "./F28M35x_common/source/F28M35x_PieVect.obj" "./F28M35x_common/source/F28M35x_PieCtrl.obj" "./F28M35x_common/source/F28M35x_OscComp.obj" "./F28M35x_common/source/F28M35x_Mcbsp.obj" "./F28M35x_common/source/F28M35x_Ipc_Util.obj" "./F28M35x_common/source/F28M35x_Ipc_Lite.obj" "./F28M35x_common/source/F28M35x_Ipc.obj" "./F28M35x_common/source/F28M35x_I2C.obj" "./F28M35x_common/source/F28M35x_Gpio.obj" "./F28M35x_common/source/F28M35x_EQep.obj" "./F28M35x_common/source/F28M35x_EPwm.obj" "./F28M35x_common/source/F28M35x_ECap.obj" "./F28M35x_common/source/F28M35x_DisInt.obj" "./F28M35x_common/source/F28M35x_DefaultIsr.obj" "./F28M35x_common/source/F28M35x_DMA.obj" "./F28M35x_common/source/F28M35x_DBGIER.obj" "./F28M35x_common/source/F28M35x_CpuTimers.obj" "./F28M35x_common/source/F28M35x_Comp.obj" "./F28M35x_common/source/F28M35x_CodeStartBranch.obj" "./F28M35x_common/source/F28M35x_CSMPasswords.obj" "./F28M35x_common/source/F28M35x_Adc.obj" "./F28M35x_headers/source/F28M35x_GlobalVariableDefs.obj" "./main.obj" "./SinCosEncoder.obj" "./PWM.obj" -l"libc.a" "../F28M35x_generic_wshared_C28_RAM.cmd"

<Linking>

error #16008-D: file "./F28M35x_common/source/F28M35x_DefaultIsr.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C28FPU32" specified in a previous file or on the command line

error #16008-D: file "./F28M35x_common/source/F28M35x_DMA.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

>> Compilation failure

error #16008-D: file "./F28M35x_common/source/F28M35x_DBGIER.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./F28M35x_common/source/F28M35x_CpuTimers.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./F28M35x_common/source/F28M35x_Comp.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./F28M35x_common/source/F28M35x_CodeStartBranch.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./F28M35x_common/source/F28M35x_CSMPasswords.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./F28M35x_common/source/F28M35x_Adc.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./F28M35x_headers/source/F28M35x_GlobalVariableDefs.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./main.obj" specifies ISA revision "C28FPU32", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./SinCosEncoder.obj" specifies ISA revision "C28FPU32", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

error #16008-D: file "./PWM.obj" specifies ISA revision "C2800", which is not compatible with ISA revision "C2700" specified in a previous file or on the command line

warning #10247-D: creating output section "csm_rsvd" without a SECTIONS specification

warning #10247-D: creating output section "csmpasswds" without a SECTIONS specification

warning #10247-D: creating output section "ecslpasswds" without a SECTIONS specification

warning #10247-D: creating output section "flashexeonly" without a SECTIONS specification

"../F28M35x_generic_wshared_C28_RAM.cmd", line 176: error #10099-D: program will not fit into available memory.  placement with alignment/blocking fails for section "ramfuncs" size 0x6a page 0.  Available memory ranges:

   RAMM0        size: 0x3b0        unused: 0x0          max hole: 0x0      

   RAML0        size: 0x1000       unused: 0x2          max hole: 0x2      

   RAML1        size: 0x1000       unused: 0x49         max hole: 0x49     

   ramfuncs         : >> RAMM0 | RAML0 | RAML1,      PAGE = 0

"../F28M35x_generic_wshared_C28_RAM.cmd", line 178: error #10099-D: program will not fit into available memory.  placement with alignment/blocking fails for section ".cinit" size 0xdc page 0.  Available memory ranges:

   RAMM0        size: 0x3b0        unused: 0x0          max hole: 0x0      

   RAML0        size: 0x1000       unused: 0x2          max hole: 0x2      

   RAML1        size: 0x1000       unused: 0x49         max hole: 0x49     

   .cinit           : >  RAMM0 | RAML0 | RAML1,      PAGE = 0

undefined   first referenced  

  symbol         in file       

---------   ----------------  

FD$$DIV     ./main.obj        

FD$$MPY     ./main.obj        

FD$$TOL     ./SinCosEncoder.obj

FD$$TOU     ./main.obj        

FS$$TOFD    ./main.obj        

__IQ24cos   ./SinCosEncoder.obj

__IQ24cosPU ./main.obj        

__IQ24div   ./SinCosEncoder.obj

__IQ24sin   ./SinCosEncoder.obj

__IQ24sinPU ./main.obj        

error #10234-D: unresolved symbols remain

error #10010: errors encountered during linking; "ServoControl.out" not built

gmake: *** [ServoControl.out] Error 1

gmake: Target `all' not remade because of errors.

**** Build Finished ****

 

We are aware of the memory mapping issue, we'll fix that after we get rid of the other errors.  We have tried explicitly linking with rts2800_ml.lib, rts

We don't know where to look to fix this.

Thanks in advance for your help!

Paul