ぬうぱんの備忘録

技術系のメモとかいろいろ

作った曲一覧はこちら

ffmpegをg++コンパイルするときのバグフィックスいろいろ

ささっとリンクだけ箇条書きで

  • UINT64_Cでエラーが出たら

https://trac.macports.org/attachment/ticket/34094/libavutil-common.h.diff

  • リンクの段階でundefinedが大量に出たら

http://ffmpeg-users.933282.n4.nabble.com/undefined-reference-to-all-libavcodec-libavformat-functions-td942778.html

ここにたどり着く前にサンプルコードを修正しまくったとかいう話はあったけどそこら辺は別の記事で。

追記 - undefinedの方

 主に次のようなエラーメッセージが出る

/usr/include/libavutil/common.h: In function ‘int32_t av_clipl_int32_c(int64_t)’:
/usr/include/libavutil/common.h:173:47: error: ‘UINT64_C’ was not declared in this scope

 解決法の1つは先に示したヘッダを編集する方法だが、それ以外でもg++のオプションに

-D__STDC_CONSTANT_MACROS

を与えることでも回避できる。ヘッダの編集よりはこっちのほうが精神衛生上良い?