1 Reply Latest reply on Oct 19, 2015 9:40 PM by Madhu Lakshmipathy

    Compiling against older versions causes link errors.

    dennis.muhlestein

      So I haven't had the greatest luck upgrading from 1.2.3 to 1.3.3.  My firmware has issues on 1.3.3 that don't exist on 1.2.3 and I haven't been able to track them all down.

         

      So... in the mean time, I've been switching back to 1.2.3.  I noticed in the 1.3.3 SDK that you can set the CYSDKVERSION variable and  use the 1.3.3 build system but use the older libraries.   This in theory would be nicer for me than switching my whole build path between the two installations because the 1.2.3/1.3.3 fx3_build_config.mak files changed a bit and I can't just switch without also updating some other config values for the make system.

         

      Anyway, if I change CYSDKVERSION = 1_2_3, I get the correct include paths and the files are compiled fine but at link time the first wrong thing that happens is that -L<path to 1.2.3> doesn't contain the libcyu3sport.a.  Easy enough to modify LDLIBS to not point to that but then there are a number of linker problems:

         

      arm-none-eabi-ld: Dwarf Error: Invalid or unhandled FORM value: 1110.
      FX3_1.3.3/cyfx3sdk/fw_lib/1_2_3/fx3_release/libcyfxapi.a(cyu3debug.o): In function `<invalid chars trimmed from copy/paste to forum.../>':
      (.text+0x698): undefined reference to `strlen'
      FX3_1.3.3/cyfx3sdk/fw_lib/1_2_3/fx3_release/libcyfxapi.a(cyu3debug.o): In function `<invalid chars trimmed from copy/paste to forum.../>':
      (.text+0x6f0): undefined reference to `__aeabi_uidivmod'
      FX3_1.3.3/cyfx3sdk/fw_lib/1_2_3/fx3_release/libcyfxapi.a(cyu3debug.o): In function `<invalid chars trimmed from copy/paste to forum.../>':
      (.text+0x72c): undefined reference to `__aeabi_uidivmod'

         

      So I guess in short... am I missing something or is compiling against an older version of the SDK not quite ready even though the libraries are there?