Visual Studioでのプログラム開発:エラーLNK2019:未解決の外部シンボル

1.環境紹介

 Visual Studio IDEバージョン:   VS2017

QTバージョン:  QT5.12.6

問題のある環境:  QTプログラムはVisual Studio 2017で開発され、ビデオプレーヤーの開発を実現するためにffmpegライブラリが参照されました。

エラーLNK2019:未解決の外部シンボル
エラーLNK2001:未解決の外部シンボル

1>CClipVideo.obj : error LNK2019: 无法解析的外部符号 _avformat_alloc_output_context2,该符号在函数 "protected: int __thiscall CClipVideo::ClipVideo(void)" (?ClipVideo@CClipVideo@@IAEHXZ) 中被引用
1>VideoEncode.obj : error LNK2001: 无法解析的外部符号 _avformat_alloc_output_context2
1>CClipVideo.obj : error LNK2019: 无法解析的外部符号 _avformat_open_input,该符号在函数 "protected: int __thiscall CClipVideo::ClipVideo(void)" (?ClipVideo@CClipVideo@@IAEHXZ) 中被引用
1>CDecodeAudio.obj : error LNK2001: 无法解析的外部符号 _avformat_open_input
1>KFileDecoders.obj : error LNK2001: 无法解析的外部符号 _avformat_open_input
1>VideoEncode.obj : error LNK2001: 无法解析的外部符号 _avformat_open_input
1>CClipVideo.obj : error LNK2019: 无法解析的外部符号 _av_read_frame,该符号在函数 "protected: int __thiscall CClipVideo::ClipVideo(void)" (?ClipVideo@CClipVideo@@IAEHXZ) 中被引用
1>CDecodeAudio.obj : error LNK2001: 无法解析的外部符号 _av_read_frame
1>KFileDecoders.obj : error LNK2001: 无法解析的外部符号 _av_read_frame
1>VideoEncode.obj : error LNK2001: 无法解析的外部符号 _av_read_frame
1>CClipVideo.obj : error LNK2019: 无法解析的外部符号 _av_seek_frame,该符号在函数 "protected: int __thiscall CClipVideo::ClipVideo(void)" (?ClipVideo@CClipVideo@@IAEHXZ) 中被引用
1>KFileDecoders.obj : error LNK2001: 无法解析的外部符号 _av_seek_frame
1>CClipVideo.obj : error LNK2019: 无法解析的外部符号 _avformat_close_input,该符号在函数 "protected: int __thiscall CClipVideo::ClipVideo(void)" (?ClipVideo@CClipVideo@@IAEHXZ) 中被引用
1>CDecodeAudio.obj : error LNK2001: 无法解析的外部符号 _avformat_close_input
1>KFileDecoders.obj : error LNK2001: 无法解析的外部符号 _avformat_close_input
1>VideoEncode.obj : error LNK2001: 无法解析的外部符号 _avformat_close_input
1>CClipVideo.obj : error LNK2019: 无法解析的外部符号 _avformat_write_header,该符号在函数 "protected: int __thiscall CClipVideo::ClipVideo(void)" (?ClipVideo@CClipVideo@@IAEHXZ) 中被引用
1>VideoEncode.obj : error LNK2001: 无法解析的外部符号 _avformat_write_header
1>CClipVideo.obj : error LNK2019: 无法解析的外部符号 _av_interleaved_write_frame,该符号在函数 "protected: int __thiscall CClipVideo::ClipVideo(void)" (?ClipVideo@CClipVideo@@IAEHXZ) 中被引用
1>VideoEncode.obj : error LNK2001: 无法解析的外部符号 _av_interleaved_write_frame
1>CClipVideo.obj : error LNK2019: 无法解析的外部符号 _av_write_trailer,该符号在函数 "protected: int __thiscall CClipVideo::ClipVideo(void)" (?ClipVideo@CClipVideo@@IAEHXZ) 中被引用
1>VideoEncode.obj : error LNK2001: 无法解析的外部符号 _av_write_trailer

次に、問題を解決します

問題がある場合、外部ライブラリの関連関数は通常プロジェクトで引用され、ライブラリのパスがリンクで指定されていないか、関数を定義する.cppファイルがプロジェクトに追加されません。

 

外部ライブラリが参照され、外部ライブラリの関数が使用され、リンクパスが追加されていないことが原因である場合は、次の図に従って、使用されているライブラリを追加の依存関係追加します

 

 

 

おすすめ

転載: blog.csdn.net/xiaolong1126626497/article/details/112868444