从链接器命令中删除了某些lib文件?

时间:2015-03-19 15:36:24

标签: visual-studio-2012 visual-c++-2012

我正在尝试将OpenCV套件的一部分用于大型项目的扩展(BCI2000)。虽然我已经成功编译并执行了an OpenCV test program,但在主程序中链接OpenCV函数时,链接失败了LNK2019:未解析的外部符号。 在最顶层的属性页中,在项目属性管理器中,显示以下命令行:

  

/ OUT:" D:\ Users \ Admin \ Documents \ Visual Studio 2012 \ Projects \ bci2k \ build \ CMakeFiles \ custom \ OpenCVTestSPModule \ Release \ OpenCVTestSPModule.exe" / MANIFEST / NXCOMPAT / PDB:" D:\ Users \ Admin \ Documents \ Visual Studio 2012 \ Projects \ bci2k \ build \ CMakeFiles \ custom \ OpenCVTestSPModule \ Release \ OpenCVTestSPModule.pdb" / DYNAMICBASE" opencv_calib3d2410.lib" " opencv_contrib2410.lib" " opencv_core2410.lib" " opencv_features2d2410.lib" " opencv_flann2410.lib" " opencv_gpu2410.lib" " opencv_highgui2410.lib" " opencv_imgproc2410.lib" " opencv_legacy2410.lib" " opencv_ml2410.lib" " opencv_nonfree2410.lib" " opencv_objdetect2410.lib" " opencv_ocl2410.lib" " opencv_photo2410.lib" " opencv_stitching2410.lib" " opencv_superres2410.lib" " opencv_ts2410.lib" " opencv_video2410.lib" " opencv_videostab2410.lib" / MACHINE:X86 / SAFESEH / PGD:" D:\ Users \ Admin \ Documents \ Visual Studio 2012 \ Projects \ bci2k \ build \ CMakeFiles \ custom \ OpenCVTestSPModule \ Release \ OpenCVTestSPModule.pgd" / MANIFESTUAC:"电平=' asInvoker' uiAccess ='假'" /ManifestFile:"OpenCVTestSPModule.dir\Release\OpenCVTestSPModule.exe.intermediate.manifest" / ERRORREPORT:PROMPT / LIBPATH:" D:\ lib \ opencv \ build \ x86 \ vc11 \ lib" / TLBID:1

同时,在Build Output框中,执行的链接命令确认已包含附加的OpenCV LIBPATH:s,但缺少所有OpenCV .lib文件,自然会导致此错误。

  

" / OUT:D:\ Users \ Admin \ Documents \ Visual Studio 2012 \ Projects \ bci2k \ build \ CMakeFiles \ custom \ OpenCVTestSPModule \ Release \ OpenCVTestSPModule.exe" / INCREMENTAL:NO / LIBPATH:D:\ lib \ opencv \ build \ x86 \ vc11 \ lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32。 lib ws2_32.lib .... \ frameworks \ LibTiny \ Release \ LibTiny.lib .... \ frameworks \ CoreLib \ Release \ BCI2000FrameworkCore.lib ws2_32.lib .... \ frameworks \ SigProcModuleLib \ Release \ BCI2000FrameworkSigProcModule.lib。 ... \ frameworks \ CoreLib \ Release \ BCI2000FrameworkCore.lib .... \ frameworks \ LibTiny \ Release \ LibTiny.lib ws2_32.lib winmm.lib / NODEFAULTLIB:msvcrt / NODEFAULTLIB:msvcrtd / NODEFAULTLIB:msvcprt / NODEFAULTLIB:msvcprtd / MANIFEST" / MANIFESTUAC:level =' asInvoker' uiAccess ='假'" / manifest:embed" / PDB:D:/ Users / Admin / Documents / Visual Studio 2012 / Projects / bci2k / build / CMakeFiles / custom / OpenCVTestSPModule / Release / OpenCVTestSPModule.pdb" / SUBSYSTEM:WINDOWS / TLBID:1 / DYNAMICBASE / NXCOMPAT" / IMPLIB:D:/ Users / Admin / Documents / Visual Studio 2012 / Projects / bci2k / build / CMakeFiles / custom / OpenCVTestSPModule / Release / OpenCVTestSPModule.lib&# 34; / MACHINE:X86 / SAFESEH / machine:X86 / include:_SigProcRegistry OpenCVTestSPModule.dir \ Release \ PipeDefinition.obj

"其他包含目录"和"其他依赖关系"在同一属性表中,显然在编译时读取属性表。有谁知道可能导致这个问题的原因是什么?目标是Win32(发布),IDE是VS2012。

可能相关:在Property Manager中,一个名为" Microsoft.Cpp.Win32.user"的属性表。存在。如果有人试图将其向上移动(稍后在评估中),则会出现错误("无法在带有标签" PropertySheets"和()的导入组中找到导入(此prop文件的路径)条件)在文件(项目的路径)")中显示。

可以在测试程序中重新排列属性表的优先级。

0 个答案:

没有答案