2010年12月14日

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

Yamaguchiさん

(1) ffmpeg-0.5.3インストール, segmenterをコンパイル ・・・ 新環境にて実施済み
(2) <HOWTO: Install and use the latest FFmpeg and x264>
http://ubuntuforums.org/showthread.php?t=786095
に従い最新版x264, ffmpegなどインストール
(3) segmenterが動くか検証

の順番でやってみました。

segmenterを動かそうとすると、
===
segmenter: error while loading shared libraries: libx264.so.85: cannot open
shared object file: No such file or directory
===
の表示が・・・。オブジェクトファイルが参照できないようです。
強引にライブラリだけを持ってきて試してみます。

2010年12月11日11:33 大塚 哲治 <teotsuka@xxxxx>:

> Yamaguchiさん
>
> まとめていただいた内容の通りです。
> ちなみに、Makefileはしており、
> ===
> $ more Makefile
> all:
> gcc -Wall -g segmenter.c -o segmenter -lavformat -lavcodec -lavutil
> -lbz2 -lm -lz
> -lfaac -lmp3lame -lx264 -lfaad
> clean:
> rm segmenter
> install: segmenter
> cp segmenter /usr/local/bin/
> uninstall:
> rm /usr/local/bin/segmenter
> ===
> となっております。
>
> やはり最新版x264がsegmenterのみならずffmpeg-0.5.3にも影響を及ぼしているようですね。
>
> (1) ffmpeg-0.5.3インストール, segmenterをコンパイル ・・・ 新環境にて実施済み
> (2) <HOWTO: Install and use the latest FFmpeg and x264>
>
> http://ubuntuforums.org/showthread.php?t=786095
> に従い最新版x264, ffmpegなどインストール
> (3) segmenterが動くか検証
>
> 上記の順番で試しています。色々とありがとうございます。
>
> 2010年12月11日10:51 Masahiko Yamaguchi <vineuser7@xxxxx>:
>
> なるほど。状況はなんとなくわかってきました。
>>
>> > 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/
>>
>>
>

投稿者 xml-rpc : 2010年12月14日 10:12
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/100728
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。