#77 Redefining uint32_t et al. clashes with <stdint.h>

open
nobody
None
5
2012-07-06
2012-01-19
No

When trying to compile AVRDUDE against libusb-win32-1.2.5.0, I get the
following error:

In file included from usbasp.c:56:0:
/tmp/libusb-win32-src-1.2.5.0/src/usbi.h:10:23: error: conflicting types for 'uint32_t'
/usr/local/lib/gcc/mingw32/4.5.0/../../../../mingw32/include/stdint.h:32:20: note: previous declaration of 'uint32_t' was here
*** Error code 1

libusb should not attempt to redeclare type names found in <stdint.h>.

As a short-term workaround, I #if 0'ed these three lines out from
usbi.h. I think a proper solution would be either to name your own
types differently, or (better) to probe for C99 types availability
from <stdint.h> in some kind of configure script, and use them if
available, falling back to the current way if no stdint.h is around.

(Btw., with those three lines disabled, all works well, and I could
successfully build AVRDUDE on my FreeBSD host against the library.
The resulting executable file works, which is great!)

Discussion


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks