clang是否提供了unlink实现?

时间:2015-10-05 18:57:57

标签: c++ clang clang++ unlink

我正在尝试使用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() ) ;

我的问题是,取消联系的铿锵声是什么?正如我所看到的那样,前进的道路将是#define取消与某个等效例程的联系。

1 个答案:

答案 0 :(得分:7)

没有“Clang等价物”。 GCC和Clang都没有负责定义unlink,尽管它们可能会分发POSIX标题(我不记得POSIX标题来自哪里)。

不幸的是,这似乎是您正在使用的库的错误; OpenExif开发人员未能包含正确的标头。不同的C ++实现可能会在内部#include各种标头用于它们自己的目的,这显然掩盖了以前工具链中的这个错误。

您可以破解您的副本和/或提交补丁以添加:

#include <unistd.h>
相关问题