安装了libpng库后,我在Windows 7 SP1平台上使用Visual Studio Ultimate 2013,并使用 #include <png.h> 将其包含到我的项目中。但在编译时,出现以下错误:
C1083: 无法打开包括文件: 'unistd.h': 没有那个文件或目录
请问如何解决这个问题?我在网上还没有找到任何解决方案。
C1083: 无法打开包括文件: 'unistd.h': 没有那个文件或目录
请问如何解决这个问题?我在网上还没有找到任何解决方案。
"unistd" 中的 "uni" 代表 "UNIX" - 在 Windows 系统中找不到它。
大多数广泛使用且可移植的库应该提供替代版本或检测平台并仅尝试使用将被提供的头文件/函数,因此值得检查文档以查看是否忽略了某些构建步骤 - 例如,可能需要运行"make"而不是加载".sln" Visual C++解决方案文件。
如果您需要自己修复,请删除该包含文件并查看实际所需的功能,然后尝试找到 Windows 等效项。
int8_t
等头文件)。 - Tony Delroy如果你正在项目中使用ZLib,那么你需要找到:
#if 1
在zconf.h中找到并替换(取消注释)为:
#if HAVE_UNISTD_H /* ...the rest of the line
如果不是ZLib,我猜你应该找一些替代方法来做这个。祝好运。
从您的项目目录更改C++标准为C++17,因为在VS中不需要使用C++17标准中的unistd.h。
#ifdef
,您只需要提供正确的定义来选择正确的平台即可。 - Retired Ninja