emWin library compatibility with IAR EWARM 7.80.4

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • emWin library compatibility with IAR EWARM 7.80.4

      I am currently using emWin 6.10 over NXP's K22 MCU.

      Has anyone compiled emWin 6.10 library (emWin_M4F.a) with an IAR EWARM 7.80.4 project and got "Warning[Lt009]: Inconsistent wchar_t"?
      Is this linker error a real issue? Or should this warning be generally ignored?

      Next, what emWin version(s) are compatible with IAR EWARM 7.80.4? (i.e. compatible or built with IAR EWARM v.7.80.4 or similar version that uses wchar_t size of 2 bytes)

      In most cases I have to use the below linker statement in my projects to avoid linker "Error[Lp049]: there was no reference to __iar_data_init3s":

      "do not initialize { readwrite };"

      Another remedy that I have practiced was to avoid creating globals with non-zero initializations, and use initialization functions instead.

      So, will using the above linker statement in IAR negatively impact the linking of emWin library?
      I guess the real question is, does emWin library source (used to build .a library file) have globals with non-zero initializations?

      (Example .c file)
      int library_global1;
      int library_global2 = non_zero_value;

      int library_global3;
    • Hi,

      emWin is written in ANSI C and is completely independent of any toolchains, compilers, architectures, etc..

      I suppose that this issue results in the way the library was build.

      Unfortunately, SEGGER is not responsible for building the libraries provided by the silicon vendors. I suggest to contact NXP in this case.

      lsrbigfoot wrote:

      I guess the real question is, does emWin library source (used to build .a library file) have globals with non-zero initializations?

      No, there are no non-zero initialized globals.

      Regards,
      Sven