Ffmpeg (1.0) を newt 構成でコンパイルしました。
./configure --disable-doc --disable-ffplay --disable-ffprobe --disable-ffserver --disable-avdevice --disable-avfilter --disable-pthreads --disable-everything --enable-muxer=flv --enable-encoder=flv --enable-encoder=h263 --disable-mmx --disable-shared --prefix=bin/ --disable-protocols --disable-network --disable-debug --disable-asm --disable-stripping
コンパイルされました-エラーはありません-ヘッダーとライブラリ(静的.a
)が配置されています。(特別な実験的 cigwin、実験的 gcc、asm オプションなし、および ffmpeg プラットフォーム定義で知られていない) (まだコンパイルしてブーストをテストしました)
今、私は自分のアプリをコンパイルしようとしています。次の例外があります。
../ffmpeg-1.0/bin/lib/libavcodec.a: error: undefined reference to 'exp'
../ffmpeg-1.0/bin/lib/libavcodec.a: error: undefined reference to 'log'
私のコンパイラビルドラインは次のようになります:
g++ -static -emit-swf -o CloudClient.swf -I../boost/boost_libraries/install-dir/include -I../ffmpeg-1.0/bin/include -L../boost/boost_libraries/install-dir/lib -L../ffmpeg-1.0/bin/lib \
timer.o \
audio_encoder.o \
audio_generator.o \
video_encoder.o \
video_generator_rainbow.o \
simple_synchronizer.o \
multiplexer.o \
transmitter.o \
graph_runner.o \
cloud_client.o \
-pthread \
-lswscale \
-lavutil \
-lavformat \
-lavcodec \
-lboost_system \
-lboost_date_time \
-lboost_thread
あなたが見るように、非常に複雑で、私はすでにすべてのオブジェクトファイルをコンパイルして準備ができています...残っているのは1つだけです-すべてをffmpegにリンクします(boostでコンパイルされたffmpegバージョンからストライプ化されています)
追加しようとしました-lm
-助けにはなりません...
ここで私の質問は-ffmpegがリンクされているライブラリのリストを取得する方法(-lm
など)ですか?