[ubuntu-jp:3206] Re: Ubuntu 10.04 LTSでOpen Source Segmenterをコンパイルするとエラー発生

Masahiko Yamaguchi vineuser7 @ gmail.com
2010年 12月 11日 (土) 01:51:16 GMT


なるほど。状況はなんとなくわかってきました。

> segmenterを最初にコンパイルしてから<HOWTO: Install and use
> the latest FFmpeg and x264>の手順に従いffmpegを入れ直しても
> 大丈夫な物なのでしょうか?

この点については、やってみないとわかりませんね。何らかの不具合が
出そうな気がしますが…。


状況をまとめると、以下のように考えてよいでしょうか?

[Case1:gitのffmpeg-0.5.3を利用した場合]
ffmpegとsegmenterのインストールには問題ない。


[Case2:最新版のffmpegとx264を利用した場合]
ffmpegのインストールには問題ないが、以下のエラーが出てsegmenterの
コンパイルが通らない。

・・・(ずらずらと:ログは後述に添付)・・・
/home/teotsuka/ffmpeg/libavutil/eval.c:254: undefined reference
to `tan'
/usr/local/lib/libavutil.a(rational.o): In function `av_d2q':
/home/teotsuka/ffmpeg/libavutil/rational.c:99: undefined reference
to `log'
collect2: ld returned 1 exit status
make: *** [all] エラー 1


[Case3:最新版のffmpegとx264をインストールした環境でgitのffmpeg-0.5.3を
コンパイルした場合]
以下のエラーが出てffmpeg-0.5.3のコンパイルが通らない。

/home/teotsuka/test/ffmpeg-0.5.3/libavcodec/libx264.c:331:
undefined reference to `x264_encoder_open_110'

collect2: ld returned 1 exit status
make: *** [ffmpeg_g] エラー 1

[Case3]のエラーは、確認していただいたコマンドの結果をみるかぎり、
x264のバージョンの違いに起因するものと考えていいでしょう。


再度確認しますが、[Case2]のエラーの報告の中で、下記の記述をみると、
コンパイルオプションが変更されていない気がするのですが、Makefileの
変更は行ないましたか?

> [コンパイルログ]
> $ make all
> gcc -Wall -g segmenter.c -o segmenter -lavformat -lavcodec -lavutil
> segmenter.c: In function ‘main’:

少なくとも「-lm」が追加されていないと、数学関数(sinやlogなど)を認識
してくれません。


-- 
ーーーーーーーー
Masahiko Yamaguchi
E-Mail: vineuser7 at gmail.com
Blog: 独学Linux http://blog.livedoor.jp/vine_user/



ubuntu-jp メーリングリストの案内