clang 是否提供 unlink 实现?
Does clang provide an unlink implementation?
我正在尝试使用 clang 编译一个库。该库调用 'unlink',这不是由 clang 定义的:
libmv/src/third_party/OpenExif/src/ExifImageFileWrite.cpp:162:17: error: use of undeclared identifier 'unlink'; did you mean 'inline'?
unlink( mTmpImageFile.c_str() ) ;
我的问题是,取消链接的 clang 等价物是什么?正如我所见,前进的道路是使用等效例程在某处#define unlink。
没有"Clang equivalent"。 GCC 和 Clang 都没有负责定义 unlink
,尽管它们可能分发了 POSIX headers 定义(我不记得具体在哪里 POSIX headers 来自).
不幸的是,这似乎是您正在使用的库的错误; OpenExif 开发人员未能包含正确的 headers。不同的 C++ 实现可能在内部 #include
各种 headers 用于他们自己的目的,这显然掩盖了您以前的工具链上的这个错误。
您可以破解您的副本 and/or 提交补丁以添加:
#include <unistd.h>
我正在尝试使用 clang 编译一个库。该库调用 'unlink',这不是由 clang 定义的:
libmv/src/third_party/OpenExif/src/ExifImageFileWrite.cpp:162:17: error: use of undeclared identifier 'unlink'; did you mean 'inline'?
unlink( mTmpImageFile.c_str() ) ;
我的问题是,取消链接的 clang 等价物是什么?正如我所见,前进的道路是使用等效例程在某处#define unlink。
没有"Clang equivalent"。 GCC 和 Clang 都没有负责定义 unlink
,尽管它们可能分发了 POSIX headers 定义(我不记得具体在哪里 POSIX headers 来自).
不幸的是,这似乎是您正在使用的库的错误; OpenExif 开发人员未能包含正确的 headers。不同的 C++ 实现可能在内部 #include
各种 headers 用于他们自己的目的,这显然掩盖了您以前的工具链上的这个错误。
您可以破解您的副本 and/or 提交补丁以添加:
#include <unistd.h>