【问题标题】:Unable to link FFMpeg libraries in Visual studio 2012无法在 Visual Studio 2012 中链接 FFMpeg 库
【发布时间】:2013-06-17 09:21:07
【问题描述】:

我一直在尝试将 FFMPEG 静态库链接到 c++ 环境中的 Visual Studio 2012。但我收到以下错误。

  • 错误 1 ​​错误 LNK1104:无法打开文件 'avcodec.lib' C:\Users\username\Documents\Visual Studio 2012\Projects\ConsoleApplication5\ConsoleApplication5\LINK ConsoleApplication5

我的 lib 文件位于 C:\Users\username\Documents\Visual Studio 2012\Projects\ConsoleApplication5\ConsoleApplication5\ExtLib\lib

编译似乎没问题。命令行是

  • /Yu"stdafx.h" /GS /W3 /Zc:wchar_t /I"C:\用户\用户名\文档\Visual Studio 2012\Projects\ConsoleApplication5\ConsoleApplication5\ExtLib\include" /Zi /Gm /Od /sdl /Fd"x64\Debug\vc110.pdb" /fp:精确 /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX- /Zc:forScope /RTC1 /Gd /MTd /Fa"x64\Debug\" /EHsc /nologo /Fo"x64\Debug\" /Fp"x64\Debug\ConsoleApplication5.pch"

主要问题似乎在于我无法让 VS2012 找到我的 ffmpeg .lib 文件的链接阶段

链接器命令行如下:

  • /OUT:"C:\Users\用户名\Documents\Visual Studio 2012\Projects\ConsoleApplication5\x64\Debug\ConsoleApplication5.exe" /MANIFEST /NXCOMPAT /PDB:"C:\Users\username\Documents\Visual Studio 2012\Projects\ConsoleApplication5\x64\Debug\ConsoleApplication5.pdb" /DYNAMICBASE “avcodec.lib” “kernel32.lib” “user32.lib” “gdi32.lib” “winspool.lib” “comdlg32.lib” “advapi32.lib” “shell32.lib” “ole32.lib” “oleaut32.lib” “uuid.lib” “odbc32.lib” “odbccp32.lib” /DEBUG /MACHINE:X64 /OPT:NOREF /INCREMENTAL /PGD:"C:\Users\用户名\Documents\Visual Studio 2012\Projects\ConsoleApplication5\x64\Debug\ConsoleApplication5.pgd" /SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"x64\Debug\ConsoleApplication5.exe.intermediate.manifest" /错误报告:提示 /NOLOGO /LIBPATH:"/LIBPATH:C:\Users\username\Documents\Visual Studio 2012\Projects\ConsoleApplication5\ConsoleApplication5\ExtLib\lib" /TLBID:1

我无法弄清楚为什么链接器无法找到我的 ffmpeg lib 文件,即使它们物理上位于 /LIBPATH 区域 - c:...\vs12...\ExtLib\lib

【问题讨论】:

    标签: visual-c++ visual-studio-2012 ffmpeg libavcodec avcodec


    【解决方案1】:

    非常感谢!它有助于解决问题。最重要的一步是在附加依赖项选项中添加lib文件的绝对路径。我现在已经对移植它需要遵循的步骤进行了全面而详细的报告。如果有人需要,请在此处找到。 [链接] (http://ramu492.blogspot.in/2013/06/porting-ffmpeg-on-to-winodws7-and.html)

    【讨论】:

      【解决方案2】:

      您的 LIBPATH 看起来不正确 - 如果路径包含空格,则应该这样引用:

      /LIBPATH:"C:\Users\username\Documents\Visual Studio 2012\Projects\ConsoleApplication5\ConsoleApplication5\ExtLib\lib"

      引号内似乎有一个额外的 LIBPATH(在下面的星号中)

      /LIBPATH:"**/LIBPATH:**C:\Users\username\Documents\Visual Studio 2012\Projects\ConsoleApplication5\ConsoleApplication5\ExtLib\lib"

      【讨论】:

        猜你喜欢
        • 2013-10-30
        • 1970-01-01
        • 1970-01-01
        • 2014-11-15
        • 2014-08-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-27
        相关资源
        最近更新 更多