我正在使用FFmpeg和SDL在Visual Studio 2010中構建Windows MFC應用程序。但是,我無法從頭開始創建MFC項目幷包括FFmpeg開發庫(avcodec.lib,avdevice.lib,avformat.lib等)後生成項目。我正在使用Zeranoe FFmpeg的開發版本。我已經配置在項目屬性如下:使用Visual Studio 2010,MFC和FFmpeg構建
- 集VC++目錄 - >包含目錄(加入FFmpeg的「包括」目錄)
- 集VC++目錄 - >庫目錄(到FFmpeg的「lib」目錄)
- 設置鏈接器 - >輸入 - >附加依賴(包括avcodec.lib等)
對於它的價值,當我忽略FFmpeg的「包括\ libavutil」生成成功包括從VC++目錄 - >包括目錄。
下面是我收到的第一個構建錯誤(我不會發布全部,因爲它很長)。任何幫助,將不勝感激。
ClCompile:
stdafx.cpp
c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\atltime.h(371): error C3861: '_mktime64': identifier not found
c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\atltime.h(386): error C3861: '_localtime64_s': identifier not found
c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\atltime.h(409): error C3861: '_gmtime64_s': identifier not found
c:\program files\microsoft sdks\windows\v7.0a\include\intsafe.h(144): warning C4005: 'INT8_MIN' : macro redefinition
c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afxtaskspane.h(279): error C2146: syntax error : missing ';' before identifier 'm_nLastAnimTime'
c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afxribboncategory.h(282): error C2146: syntax error : missing ';' before identifier 'm_ActiveTime'
c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afxdockingmanager.h(353): error C2146: syntax error : missing ';' before identifier 'm_clkLastTime'
Build FAILED.
我引用的這兩篇論文,這是有幫助的:
謝謝!那是我的問題。對於其他具有相同問題的人員,在使用「包含目錄」對話框時,Visual Studio默認會將其添加到列表的前面。您必須手動將它移動到前面的$(IncludePath)變量:'$(IncludePath); C:\ lib \ ffmpeg-20130110-git-2672b2c-win32-dev \ include; ...' – spurgeon