0

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など)ですか?

4

1 に答える 1

1

Linuxの場合は、試してください

ldd /path/to/ffmpeg-binary

また

ldd `which ffmpeg`
于 2012-10-22T18:11:43.923 に答える