2005/04/24

あれ?ちゃんとビルドできるじゃん。

えーと、MinGWでOggencをビルドする件ですが…うまく行きました。
  • cygwinと違って_G_config.hは無いので、os_types.hを書き換えてやる必要がある
  • setbinmode()関数なんてMinGWには無いので、空の関数を作るなり#defineで空にしてやるなりという手を講じる
  • そして今回判明した超重要なTIPS「/usr/libとかにライブラリを入れてもconfigureスクリプトが認識してくれないので(--libdir=/usr/local/libとかやってもダメ)、configureは常に--prefix=/mingwで実行すべし」
  • vorbis-toolsのconfigureが吐くmakefileは何故かflac.oをoggencにリンクしないため、リンクエラーが出る→configure後にMakefileを書き換えるべし
  • liboggのmake中に「main.c : undefined reference to WinMain@16」というリンクエラーが出るが、これはDLL絡みのエラーなので、全コンポーネントを構築する際にconfigureに--enable-shared=noを渡してやれば無問題(dll作りたい人には大問題だけどさ)
という点に留意しつつlibogg→libvorbis→flac→vorbis-toolsの順でコンパイルしていけば、つつがなくMinGW + MSYSでコンパイルが終わる模様。一応これでFLAC→Ogg/Vorbis変換をそれなりに高速にこなせるようになったわけだ。これで準備は万端だ。 …あとは「Ogg/Vorbis再生中に突如プレイヤーが再起動してしまうiAudio G3」のファームウェアが何とかなればOKだな。堪忍袋の緒が切れて叩き売らないうちにFIXしてくれよ>COWON。

0 件のコメント: