1 Reply Latest reply on May 1, 2019 11:38 PM by DheerajK_81

    KEIL link failures for all my Cy components after copying code to new laptop with new Creator 2.2 installation

    mimcc_974931

      Link errors for all Cy components on my project. This project was built with creator 2.2 a long time ago and was good. Copied code to new laptop 2 years later, installed 2.2, opened Ok, did not need to update components. All building steps complete up to linker, where the symbols (every cy component I referenced) are not found. See section below from output.  I made sure the embedded keil is registered and expire date is confirmed in June 2020. At first, I thought Keil would mangle the libraries. The libraries referenced on the linker command link show below are verified to exist and do not seem corrupt.  I found under 'lib' a keil lib called CyCompLib.LIB, and added that to the linker external lib and verified it shows up on the linker line in the output. Still not luck.


      What could this be? What should I do to debug this? I do not see the keil LIBx51.exe anywhere, or I would dump the symbols in the libraries to verify they exist in the library. This is the embedded distribution of keil DP8051_Keil_903 for this particular PSOC chip.

       

      Thanks for any hints on how to debug this build issue.

       

      OUTPUT SNIPPIT:

       

      API Generation ...

      Dependency Generation ...

      Clean Temporary Files ...

      c51.exe .\cr_lib.c NOIV LARGE MODDP2 OMF2 VB(1) PR(.\DP8051_Keil_903\Debug\cr_lib.lst) CD DB NOIP "OT(2, Size)" INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\cr_lib.obj)

      c51.exe .\lcd_lib.c NOIV LARGE MODDP2 OMF2 VB(1) PR(.\DP8051_Keil_903\Debug\lcd_lib.lst) CD DB NOIP "OT(2, Size)" INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\lcd_lib.obj)

      WARNING: .\lcd_lib.c:165: 'name': unreferenced local variable

      WARNING: .\lcd_lib.c:80: not every exit path returns a value

      WARNING: .\lcd_lib.c:93: not every exit path returns a value

      c51.exe .\main.c NOIV LARGE MODDP2 OMF2 VB(1) PR(.\DP8051_Keil_903\Debug\main.lst) CD DB NOIP "OT(2, Size)" INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\main.obj)

      WARNING: .\main.c:630: 'i': unreferenced local variable

      Ax51.exe .\Generated_Source\PSoC3\CyBootAsmKeil.a51 NOCO MACRO DB PR(.\DP8051_Keil_903\Debug/CyBootAsmKeil.lst) CASE EP INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\CyBootAsmKeil.obj)

      Ax51.exe .\Generated_Source\PSoC3\cymem.a51 NOCO MACRO DB PR(.\DP8051_Keil_903\Debug/cymem.lst) CASE EP INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\cymem.obj)

      Ax51.exe .\Generated_Source\PSoC3\KeilStart.a51 NOCO MACRO DB PR(.\DP8051_Keil_903\Debug/KeilStart.lst) CASE EP INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\KeilStart.obj)

      c51.exe .\Generated_Source\PSoC3\I2C_1_SLAVE.c NOIV LARGE MODDP2 OMF2 VB(1) PR(.\DP8051_Keil_903\Debug\I2C_1_SLAVE.lst) CD DB NOIP "OT(2, Size)" INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\I2C_1_SLAVE.obj)

      c51.exe .\Generated_Source\PSoC3\I2C_1_MASTER.c NOIV LARGE MODDP2 OMF2 VB(1) PR(.\DP8051_Keil_903\Debug\I2C_1_MASTER.lst) CD DB NOIP "OT(2, Size)" INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\I2C_1_MASTER.obj)

      c51.exe .\Generated_Source\PSoC3\adc_AMux.c NOIV LARGE MODDP2 OMF2 VB(1) PR(.\DP8051_Keil_903\Debug\adc_AMux.lst) CD DB NOIP "OT(2, Size)" INCDIR(Generated_Source\PSoC3) OJ(.\DP8051_Keil_903\Debug\adc_AMux.obj)

      LIBX51.exe TRANSFER '.\DP8051_Keil_903\Debug\CyBootAsmKeil.obj', '.\DP8051_Keil_903\Debug\cymem.obj', '.\DP8051_Keil_903\Debug\KeilStart.obj', '.\DP8051_Keil_903\Debug\I2C_1_SLAVE.obj', '.\DP8051_Keil_903\Debug\I2C_1_MASTER.obj', '.\DP8051_Keil_903\Debug\adc_AMux.obj' TO '.\DP8051_Keil_903\Debug\MCM_00300_Rev1.lib'

      LX51.exe '.\DP8051_Keil_903\Debug\cr_lib.obj', '.\DP8051_Keil_903\Debug\lcd_lib.obj', '.\DP8051_Keil_903\Debug\main.obj', '.\DP8051_Keil_903\Debug\MCM_00300_Rev1.lib', 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\DP8051\DP8051_Keil_903\Debug\CyComponentLibrary.lib' , "C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\lib\DP8051\DP8051_Keil_903\Debug\CyCompLib.LIB"  TO '.\DP8051_Keil_903\Debug\MCM_00300_Rev1.omf' PR(.\DP8051_Keil_903\Debug\MCM_00300_Rev1.map) IX CODE DW(16) RU CL(XDATA(X:0x0000-X:0x1FFF)) CL(CODE(C:0x0000-C:0xFFFF)) CL(CONST(C:0x0000-C:0xFFFF))

      *** ERROR L127: UNRESOLVED EXTERNAL SYMBOL

          SYMBOL:  cr_Read

          MODULE:  .\DP8051_Keil_903\Debug\cr_lib.obj (CR_LIB)

      *** ERROR L127: UNRESOLVED EXTERNAL SYMBOL

          SYMBOL:  _cr_Write

          MODULE:  .\DP8051_Keil_903\Debug\cr_lib.obj (CR_LIB)

      *** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL

          SYMBOL:  cr_Read

          MODULE:  .\DP8051_Keil_903\Debug\cr_lib.obj (CR_LIB)

          ADDRESS: 10017ECH

      *** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL

          SYMBOL:  _cr_Write

          MODULE:  .\DP8051_Keil_903\Debug\cr_lib.obj (CR_LIB)

          ADDRESS: 10017F7H

      *** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL

          SYMBOL:  cr_Read

          MODULE:  .\DP8051_Keil_903\Debug\cr_lib.obj (CR_LIB)

          ADDRESS: 10017AAH

      *** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL

          SYMBOL:  _cr_Write

          MODULE:  .\DP8051_Keil_903\Debug\cr_lib.obj (CR_LIB)

          ADDRESS: 10017B9H