我正在尝试使用Windows命令行中的cl.exe编译我从网上下载的C程序。此文件包含gnu C库文件,例如getopt.h和unistd.h,这些文件在Windows下默认不可用。如何访问这些(仍然使用cl.exe编译器)。
感谢。
答案 0 :(得分:3)
getopt.h和unistd.h不是库 - 它们是头文件。即使你拥有它们,它们对你也没用,因为你还需要实际的二进制库(.LIB或.a文件)。顾名思义,unistd.h文件包含特定于Unix的函数声明。
答案 1 :(得分:3)
对于getopt.h,您可以使用xgetopt。如果您对更改编译器感兴趣,总会有MingW。否则,您可能必须编写自己的getopt.h或unistd.h。
答案 2 :(得分:3)
文件getopt.h和unistd.h是头文件。最好使用像MINGW32这样的gnu兼容编译器。由于替换此文件通常不足以让您的库在Windows编译器下编译和运行。如果您仍想使用cl.exe,请将“unistd.h”替换为“windows.h”,并从互联网上获取win32兼容的“getopt”。
答案 3 :(得分:2)
答案 4 :(得分:1)
getopt.c
将非常简单地移植到MS C(我已经使用VS2005完成了此操作)。您可以从MinGW网站获取。 This Stackoverflow posting讨论了在MS C编译器上替换unistd.h
。
答案 5 :(得分:0)
unistd.h是standard C include file。如果您使用的任何编译器都没有提供它,我会感到震惊。你确定不存在吗?