0

C++ プログラムで ffmpeg ライブラリを使用したいと考えています。

ffmpeg ソースをダウンロードしました。
make&compile プロセス中に、次のエラーが発生しました:
UINT64_C が定義されていません!
いくつかの検索の後:

1. libavutil/common.h に以下のコードを追加

#ifndef INT64_C
#define INT64_C(c) (c ## LL)
#define UINT64_C(c) (c ## ULL)
#endif

2../configure&compile その問題を解決しました。

しかし今、このライブラリをcmakeファイルを使用して単純なエンコード方法にリンクしたいと考えています。
CMakeLists.txt のサンプルをいくつか試してみましたが、まだ
「undefined refrence」エラーが発生しています

  • 私はubuntuで働いています
  • g++ を C++ コンパイラとして使用する
  • FFmpeg 2.0.1 を使用
4

1 に答える 1

1

ライブラリのファインダーを作成しffmpeg、それを cmake 対応プロジェクトで使用して、正しい場所と必要なすべてのファイル (ヘッダーとライブラリ) を検出し、ユーザーが検索結果をオーバーライドできるようにする必要があります (本当に良いものについて話している場合)。ファインダ)...

ネット上でそれを行う方法についてのチュートリアルがたくさんあります。さらに、 (少なくとも私のgentooシステムでは)多数ffmpegのファイルがあるため、比較的簡単です。必要なのは、それを「検出」するために再利用することだけです...そして、cmakeにはw/マクロと呼ばれるモジュールがありますこのタスクをより簡素化します。使用することを忘れないでください。.pcpkg-configFindPkgConfigpkg_check_modulesFindPackageHandleStandardArgs

で詳細を読む/usr/share/cmake/Modules/readme.txtか、グーグルで検索してください...

于 2013-08-19T12:04:22.277 に答える