我是 C 编程新手(精通 Java),试图在我的 Windows 机器上编译一些旧的(~1999)C 模块。我正在使用 Eclipse CDT,并在计算机上安装了 Cygwin。我已经解决了所有问题,除了一个:模块包含 sys/io.h、sys/stat.h 等语句。经过一些研究,我发现这些是 unix 系统调用。是否可以使用 Cygwin 通过 eclipse 在我的 Windows 机器上解决这些包含问题?还是需要在unix环境下运行?如果这些信息有任何错误,请纠正我...我在尝试编译这些模块时束手无策。谢谢。
最佳答案
即使您在 Windows 上使用 Cygwin、Mingw 或其他类似 GCC 的编译器(无论有或没有 Eclipse),它仍然是 Windows,并且不提供 100% 兼容的 Linux 系统服务。所以YMMV。
Windows 10 带有 WSL提供了更加兼容的 Linux 环境以及真正的 Linux C 编译器及其所有包含文件。如果你只需要运行一些Linux程序,而不需要花太多精力去Windows适配,这就是方法。
关于Windows 上的 C 模块需要 Linux 系统包含,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50701031/