在编译Objective-C ++代码时,如何找到我缺少的库?

时间:2013-06-29 12:39:05

标签: c++ xcode objective-c++

有时,我遇到这样的错误:

Unknown error compiling opencv framework: Undefined symbols: "_CGImageDestinationCreateWithURL"

我得到完全相同的错误,在我与ImageIO.framework链接后,一切都解决了。但我怎么知道丢失的框架是ImageIO?有没有找到的技术?或者Xcode可以帮我找出来吗?

1 个答案:

答案 0 :(得分:0)

如果仔细查看错误消息,您会发现xcode告诉您缺少的内容。

Undefined symbols: "_CGImageDestinationCreateWithURL", referenced from: 
cv::ImageIOEncoder::write(cv::Mat const&, std::vector > const&)
in OpenCV(grfmt_imageio.o)

好的,首先搜索列出的未定义符号,如:-CGImageDestinationCreateWithURL。然后查看未定义符号来自的类的头文件。对于CGImageDestinationCreateWithURL,它是CGImageDestination.h。查看头文件的顶部,检查是否有他们导入的所有框架。在您的情况下,它是#include <CoreGraphics/CoreGraphics.h>#include <ImageIO/CGImageSource>以及另一个ImageIO导入。这应该告诉您必须导入CoreGraphics框架和ImageIO框架。