Hello,
I am using the S32K Unified Bootloader program (S32K144_CANFD_bootlloader) posted by @nxf10035 here as basis to extend the UDS library. I have some issues during compilation and questions regarding the linking process. Please note that my changes were almost exclusively limited to the files in Sources/unified_stack/UDS_stack/UDS.
When I try to compile, I get the error that the file "autolibc.h" does not recognize the types defined in "common_types.h". This would not be weird, since "autolibc.h" does not include "common_types.h"; but "autolibc.c" does instead. However, the very similar project also distributed within the same archive S32K144_App_CANFD (What's the difference between the two projects, anyway?) compiles without issues even though "autolibc.h" of that project also does not directly include "common_types.h".
First, how does that even work? Why are the include statements placed in the source instead of the header?
Second, I know that the project I'm working on also compiled before I made the changes. I made no changes whatsoever to linking and the files in question, how could I have caused this error?
Third, I can compile just fine when I add the include statement in the header file, but only the DEBUG configuration compiles, with DEBUG_RAM and RELEASE configurations printing the "fatal error: common_types.h: No such file or directory".
I believe that I have some linker problems, but I can't figure out how to proceed. I can see the directories listed under "Includes".
Hello, @Grasshopper1
It's looks like you have not include the header file. You can reference the example code of unified bootloader project in S32DS. As following show all the path of include header path, you may needed to check your project's header path.
Thanks!
BR