Broken header dirent.h

Ryan Johnson
Mon Jul 14 14:51:00 GMT 2014

On 14/07/2014 4:49 AM, Corinna Vinschen wrote:
> Hi Ryan,
> On Jul 12 13:53, Ryan Johnson wrote:
>> Hi all,
>> Please CC me in replies, I'm no longer a list member.
> Given the massive amount of mail on this list I can see your point... ;)
Actually, I do seem to be a list member of this list after all. It's the 
main cygwin list that had too much traffic.

>> I recently tried to use <sys/dirent.h> in a C++ program and got linker
>> errors. Turns out the header is neither C++-aware (extern "C") nor
>> cygwin-aware (_EXFUN).
> It doesn't have to be.  Including <sys/dirent.h> is not meant to be done
> in application code.  The POSIX header is <dirent.h>, not <sys/dirent.h>:
> If you include <dirent.h>, your linker problems should go away.
Oops... I must have misread a man page somewhere. Could have sworn it 
said to use sys/dirent.h, but (my usual go-to for man pages 
since I can't figure out how to install them locally) definitely agrees 
with you.


More information about the Cygwin-developers mailing list