#error Macro definition of vsnprintf conflicts with Standard Library function declaration
Hello,
I am new to freertos and I am trying to test the Network and FAT demo. I am trying to compile it with Microsoft Visual Studio 2015. When I try to compile It I get the following errors on the stdio.h file:
Warning C4005 ‘vsnprintf’: Macro redefinition
Error C1189 #error: Macro definition of vsnprintf conflicts with Standard Library function declaration RTOSDemo
On StackOverflow I have found a reference to a similar problem but solution does not work for me:
http://stackoverflow.com/questions/27754492/vs-2015-compiling-cocos2d-x-3-3-error-fatal-error-c1189-error-macro-definiti
What I am missing?
Thanks in advance.
#error Macro definition of vsnprintf conflicts with Standard Library function declaration
Looks like a compiler version difference issue. Did you grep for #defines like the example in your link?
#error Macro definition of vsnprintf conflicts with Standard Library function declaration
I commented all the #defines related to vsnprintf but I got errors relating to _vsnprintf function.
Error C2084 la función ‘int vsnprintf(char *const ,const sizet,const char *const ,va_list)’ ya tiene un cuerpo
#error Macro definition of vsnprintf conflicts with Standard Library function declaration
Yes I had the same when moving from VS2010 to VS2015. In earlier versions,
snprintf()
was considered unsafe and and alternative (_snprintf
) had to be used.
This could be used as well:
~~~~
#if MSCVER < 1500
#define snprintf _snprintf
#define vsnprintf _vsnprintf
#define strdup _strdup
#endif
~~~~
Adeu/adios.
#error Macro definition of vsnprintf conflicts with Standard Library function declaration
Hi,
Has finally anybody solve successfully this issue?
I am not sure in which file need to be included the previous solution. In
stdio.h
file?
Thanks for sharing.
Oscar
#error Macro definition of vsnprintf conflicts with Standard Library function declaration
It is not clear to me why you think the problem has not been solved, or
why it is a problem at all – it just depends on which version of Visual
Studio you are using.
Did you try Hein’s solution?
#error Macro definition of vsnprintf conflicts with Standard Library function declaration
I was trying Hein’s solution, but I don´t know which file mofify, or in which file should be included the changes. I am using VS2015.
Thanks again
Oscar
#error Macro definition of vsnprintf conflicts with Standard Library function declaration
Did you try grep’ing the directory structure for where the function
names snprintf and _snprintf already occur in a macro? From the thread
it sound like you just need to remove or update the macro mapping.