Leander Hutton writes:
I have libusb-devel installed and /usr/include/usb.h and
/usr/include/stdint.h are both present. Running the included makefile
for the Linux build just dumps unknown type name errors for u_int8_t and
u_int16_t:
/usr/include/usb.h:81:2: error: unknown type name ‘u_int8_t’
u_int8_t bLength;
^~~~~~~~
/usr/include/usb.h:82:2: error: unknown type name ‘u_int8_t’
u_int8_t bDescriptorType;
^~~~~~~~
/usr/include/usb.h:87:2: error: unknown type name ‘u_int8_t’
u_int8_t bLength;
^~~~~~~~
Tested compiling the code on Debian and Ubuntu with the equivalent
libraries installed and it produces the binaries just fine, so I must be
missing something on the Fedora procedure. It's almost like it's missing
It's not that something's missing, but that something's is now a different
version.
Unfortunately the original person who wrote this code has long since
vanished but Teensy stuff is pretty popular so I thought it'd be worth a
shot to ask here! I haven't messed with any other Teensy code myself.
A brief grep finds these typedefs defined in <sys/types.h>:
#include <sys/types.h>
typedef u_int8_t foo;
This compiles just fine.
So, I surmise that the code in question was using something that itself
includes sys/types.h, but whatever that is, the version on Fedora doesn't
itself include it.
You'll just need to figure out which modules need this, and manually shove
that include in there, yourself. That'll probably fix it.