自分用メモ。Debianでfaac-1.28をコンパイルしてたらエラーが出た。
mpeg4ip.h:126: error: new declaration ‘char* strcasestr(const char*, const char*)’ /usr/include/string.h:367: error: ambiguates old declaration ‘const char* strcasestr(const char*, const char*)’ make[3]: *** [3gp.o] Error 1 make[3]: Leaving directory `/home/kouji/usr/local/src/faac-1.28/common/mp4v2' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/kouji/usr/local/src/faac-1.28/common' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/kouji/usr/local/src/faac-1.28'
調べてみるとstrcasestr(const char*, const char*)はstring.hで定義されていて、特別必要なさそうなんで該当部分をコメント。今後同じようにコンパイルする時面倒なんでパッチ化。ついでにコピペ用の手順も残しておく。
http://blog.nogisawa.net/wp-content/uploads/2012/08/faac-1.28-mpeg4ip.20120808.patch_.txt
wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz tar zvxf faac-1.28.tar.gz cd faac-1.28 wget http://blog.nogisawa.net/wp-content/uploads/2012/08/faac-1.28-mpeg4ip.20120808.patch_.txt patch -p0 < faac-1.28-mpeg4ip.20120808.patch_.txt ./configure --prefix=/usr/local make make install cd ..
ついでなんでfaadも。こちらはエラーは出ず。
wget http://downloads.sourceforge.net/faac/faad2-2.7.tar.gz tar zvxf faad2-2.7.tar.gz cd faad2-2.7 ./configure --prefix=/usr/local make make install cd ..
以上。