AnsweredAssumed Answered

MQX with MFS compile problem

Question asked by Geoff Westwood on Feb 25, 2010
Latest reply on May 23, 2011 by Terry Buckley



I am trying to integrate into MQX a quite complex 3rd party piece of code, this code requires me to use MFS for the file system but also requires me to include the standard header <stdio.h> .


Adding this header as shown below will cause a compile error even for the trivial example below


#include <stdio.h>  // Grrr this causes header clash#include "mqx.h"#include "fio.h"#include "mfs.h"void doSomething(void){}

Error   : identifier 'FILE' redeclared
was declared as: 'struct _FILE'
now declared as: 'struct file_struct'
fio.h line 153   } FILE, _PTR_ FILE_PTR;

To reduce the errors down to just this "FILE" variable clash I had to  declare the macro "MQX_SUPPRESS_STDIO_MACROS"


I have no idea how to fix this last error , can anyone suggest a tidy fix please ?  I tried kludging out the clashing item in "cstdio" but that didnt seem sensible and it triggered more compile faults  anyway.


Thanks for any suggestions