Leopardいれるぞぉーと意気込んでいたはずが未だにPanther。しかしまあ、radeon8500、powerlogix
CPUなどハードのサポート具合を考えると、Cubeに
はPantherが一番合っ
ている気もする。とはいうものの、ソフトウェア面ではさすがにかなーり放置プレイ扱い気味になってきた。ffmpegも2007年末版は素直にビルドでき
たのが、今
の最新版はconfigureすらまともに動かず。
WMV対応などを考えると最新版が欲しいのでやはりなんとかビルドさせたい。というわけで以下メモ。
とりあえず本家のダウンロードページの説明にあるように、gitでffmpeg(git-4c69262)とswscaleのソースツリーを引っ張って
きてconfigure。の
前に、
configureの中をいじる。
configure
-sym=$($nm -P -g $TMPO | grep ff_extern)
+sym=$($nm -j -g $TMPO | grep ff_extern)
の部分と、
-od -A n -t x1 $TMPO | grep -q '42 *49 *47 *45'
&&
enable bigendian
+#od -A n -t x1 $TMPO | grep -q '42 *49 *47
*45' &&
+enable bigendian
の部分をかようにやっつけで修正。で、configureする。
% ./configure --enable-libx264 --enable-libfaad
--enable-libfaac --enable-liba52 \
--enable-libamr-nb --enable-libamr-wb --enable-libmp3lame
--enable-pthreads
\
--enable-libxvid --enable-gpl --enable-nonfree --enable-swscale \
--enable-postproc --enable-powerpc-perf --cpu=7457
次に一部ソースを修正。
libavformat/rtp_h264.c
- assert(data);
- assert(data->cookie == MAGIC_COOKIE);
- assert(buf);
+/*
+ assert(data);
+ assert(data->cookie == MAGIC_COOKIE);
+ assert(buf);
+*/
この部分をコメントアウト。
ffmpeg.c
#ifdef HAVE_SYS_RESOURCE_H
#include <sys/types.h>
#include
<sys/resource.h> ←これを
#elif defined(HAVE_GETPROCESSTIMES)
#include <windows.h>
#endif
#if defined(HAVE_TERMIOS_H)
#include <unistd.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/time.h>
#include <termios.h>
#include
<sys/resource.h> ←ここに移動
#elif defined(HAVE_CONIO_H)
#include <conio.h>
この部分を修正。
次にmakeするが、あっという間にコケる。libxxx/libxxx.aがありません、といくつも出るので地味にメッセージ出たlibxxxに移動
してmake、出なくなるまでやる。Makefileをいじって直せばいいのだろうが、ffmpegのMakefileはややこしくてよくわからず。
ビルドが完了したらmake installはできないので、地味にffmpegを/usr/local/binにコピーして終了。
以上。
|