【发布时间】:2013-02-07 06:53:45
【问题描述】:
我想使用 CvCaptureFromFile(..) 函数的源代码,因为我不想在我的项目中使用 OpenCV 库函数。所以我按 F10,F11 进入函数内部,然后复制我需要的东西并将它们转换为 C 代码。到目前为止一切正常。
但是当我尝试运行时,我在函数 icvIntFFMPEG(void) 内遇到链接错误
错误如下:
错误 1
error LNK2019: unresolved external symbol "__declspec(dllimport) void * __stdcall GetProcAddress(struct HINSTANCE__ *,char const *)" (__imp_?GetProcAddress@@YGPAXPAUHINSTANCE__@@PBD@Z) referenced in function "void __cdecl icvInitFFMPEG(void)" (?icvInitFFMPEG@@YAXXZ)
错误 2error LNK2019: unresolved external symbol "struct HINSTANCE__ * __stdcall LoadLibrary(char const *)" (?LoadLibrary@@YGPAUHINSTANCE__@@PBD@Z) referenced in function "void __cdecl icvInitFFMPEG(void)" (?icvInitFFMPEG@@YAXXZ)
我复制了源代码中的所有内容。知道我哪里出错了吗?如何解决此错误?
更新:如果我将头文件(我正在处理源代码的地方)包装在类似这样的外部“C”中 -
extern "C" {
#include "defination.h"
}
然后第一个错误消失了,loadLibrary的错误变成了
error LNK2019: unresolved external symbol __imp__LoadLibrary@4 referenced in function _icvInitFFMPEG
【问题讨论】:
-
你复制了你需要的东西,但没有复制你复制的东西需要的东西......你为什么不直接使用OpenCV而不是玩这些“游戏” “?
-
我不能使用opencv这就是我使用源代码的原因..
标签: c++ c opencv video-capture