Menu

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

v1.2.x
closed
nobody
None
5
2018-08-31
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

  • Xiaofan Chen

    Xiaofan Chen - 2018-08-31

    Thanks for the info. libusb-win32 is in a bug-fix only mode and no API changes will be made unless absolutely necessary.

     
  • Xiaofan Chen

    Xiaofan Chen - 2018-08-31

    Closing old entry. Please use libusb-win32 mailing list for future discussions.

     
  • Xiaofan Chen

    Xiaofan Chen - 2018-08-31
    • status: open --> closed
    • Group: --> v1.2.x
     

Log in to post a comment.