If you just want to use the data types defined there, without using any functions or extern variables, that doesn't require linking windows libraries. Then you can try windows.h from a mingw distribution. However, the only useful data types I can think of are redefines of primitive types, of which you should copy the typedefs into a separate file. If you are porting a library from windows, you have to know exactly why it depends on windows files.