采取这个简单的程序
#include <stdio.h>
#include <string.h>
#include <errno.h>
int
main (void)
{
printf ("ERROR %d %s\n", ETIMEDOUT, strerror (ETIMEDOUT));
return 0;
}
如果你用 Cygwin gcc 编译它运行良好
$ gcc a.c
$ ./a
ERROR 116 Connection timed out
如果你用 MinGW-w64 gcc 编译它,它不会给出正确的错误信息
$ i686-w64-mingw32-gcc a.c
$ ./a
ERROR 138 Unknown error
如何让 MinGW-w64 输入正确的错误消息?