Multiple gloabl symbol definitions

  • 2011-02-23 08:52:29 EST
    I am having a similar but slightly different problem with release 2.9.0 writing a multi-module program for the C8051F350.  Several modules include C8051F350.h.  When I link the program, many of the processor’s global symbols, such as: _ADC0F, _PCA0CP0, _PCA0CP1, _ADC0H, _ADC0L, etc., are reported by the linker as having multiple definitions.

    I have seen this problem before, and resolved it, unfortunately I don’t remember how.  Further, I have another project, also with multiple modules, that **doe_sn’t have this problem[/b_].  I can see no differences between these projects to explain.  I have carefully examined the compiler, assembler and linker commands and see no differences.



  • Found the problem.  Some modules were including a different CPU definition file than others (because they were taken from a different project that uses a different CPU variant).