Including constants without functions

  ambiguous, c++, constants

I am making a c++ library and I want to include fcntl.h in the header (for the permission constants)

But I have a function called open, the argument list contains classes that can be casted to the fcntl’s open argument list types.

That means when i use #include<fcntl.h> I am getting an ambiguous error.

I want the library to be as portable as possible.

I thought of changing the name from open to Open but is there a better solution?

Like including the header without parsing the functions(eg. Just including the constants).

Source: Windows Questions C++