2008-03-03
_ [Mozilla]
firefox-2.0.0.12とthunderbird-2.0.0.12のビルドオプションに以下を追加。
ac_add_options --enable-extensions=default,venkman,inspector
venkman:NG
venkman追加でJavaScript Debuggerをデフォルトで入れておこうと思ったが失敗。
メニューにJavaScript Debuggerが出てこないし、URL直叩くと中でループしてしまってまともに使えなかった。
inspector:OK?
firefoxはデフォルトで入ってくるが、thunderbirdには入らないので入れてみた。
XULの何かがおかしいためか、画面下に赤文字でkeyタグのエラーが出てくる。この手のエラーは久しぶりに見るな。
コレくらいなら対処可能かも。ちょっとのぞいてみるか。
まあ、venkmanとってビルドしなおした版の公開が先決だが。
2008-03-04
_ [Mozilla]
DDK、VC8、VC7.1、VC6をパラレルでビルドすると、同時にmozillaディレクトリにアクセスすることになるためか、たまに(というかかなりの頻度で)ビルドに失敗する。
ビルドバッチにもう少し手を入れて、シリアルで4系統自動でビルドできるようにする予定。
ActiveXプラグインもビルドするけど、デフォルトでは入れないよ。xpiは公開するけど。
バナーの中にはActiveXのモノもあるらしく、Adblock Plusでもブロックできない。
ウザいったらありゃしない。
あと、thunderbirdにはDOM Inspector入れるつもり。
XULのエラーは出るけど、一応動くっぽいので。
_ [OS/アプリ]
今回の動画はNiVEで作ったんだけど、AVIに落とすときにつまずいたのでメモ。
http://www.wikihouse.com/nicoAE/
・他の動画の読み込みはDirectShow入力プラグインがほぼ必須。
http://www.wikihouse.com/nicoAE/index.php?%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3#r3c879c8
・AVI書き出しのコーデックはMSUで。
http://compression.ru/video/ls-codec/index_en.html
HuffYUV、FastCodec、無圧縮などは読めない、真っ黒、画面とタイムラインが崩れる。
http://cowscorpion.com/Codec/HuffYUV.html
http://videosoft.org/codecs/fastcodec
ARBG32bitの場合は24bitに変換するか聞かれるので、はいを選択すること。
いいえにすると1フレームごとにMSUがエラーダイアログを出すのでkillしかなくなる。
・入力プラグインの優先度
書き出したAVIをAviUtlで読むときは、入力プラグインの優先度でDirectShow File Reader プラグインを一番上に持ってくること。
http://ruriruri.zone.ne.jp/aviutl/
http://www.tenchi.ne.jp/~yoko/aviutl/index.php?DirectShow%20File%20Reader%20%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3%20for%20AviUtl
・書き出したAVIはサイズは小さいがシークが非常に遅いので、HuffYUVかFastCodecに落とすこと。
・サンプリングレート48kHzのwavは生のまま加工すること。
AviUtlでAVIのオーディオデータをwavに戻すと、まともに聞けない状態になる。
44.1kHzのオーディオデータは問題ない。
2008-03-05
2008-03-06
_ [Mozilla][OS/アプリ]
2/29にSDK 2K8がアップデートされて、cl.exeとかが入らなくなったって書いたけど勘違いだった。
cl.exeとかのインストール先がVC9eと同じ場所になって、VC9eのcl.exeとかが上書きされてただけだった。
うんうん、VC9eにml.exeなんてなかったよ。確かに。
なので、新版のSDK 2K8+WDK 2K8でビルド可能です。
SDK:cl.exe、lib.exe、link.exe、ml.exe、midl.exe、rc.exe、mt.exe
WDK:ATL3.0、MFC6.0
で、WDKはATLとMFCしか使ってないので、Windows Server 2003 R2 Platform SDKでもOKです。
まあ、その場合はATLのヘッダの修正が必要だけど。
http://www.atmarkit.co.jp/fwcr/special/custom_browser/01.html
2008-03-09
2008-03-11
2008-03-12
_ [Mozilla][OS/アプリ]
firefox-3.0b4を--enable-jemallocでprofiledbuildしてみた。
・VC添付のCRTソース+jemallocパッチの形式なので、
mozcrt19.dllをコンパイルできるのは製品版Visual Studioのみ。
ExpressやSDKなどにはCRTソースはなく、ヘッダとライブラリがあるだけ。
・firefox-3.0b4のjemallocはVC8向け。
他のバージョンではそのまま使えない。(しかもdiffがed形式!)
なので、diff取り直し。綾川氏作成のパッチでもOKのようだ。
http://marilab.hp.infoseek.co.jp/buildfx/index.html
・VC9はStandardでもPGOできるらしいと書いたがどうもあやしい。
実際にビルドするとpgodb90.dllがないと怒られる。
FAQにはできるようなことが書いてあるけど、MSDNの一覧表にはチェックがついてない。
http://www.microsoft.com/japan/msdn/vstudio/express/faq/2008/default.aspx
http://msdn2.microsoft.com/ja-jp/library/hs24szh9.aspx
いったいどっちなんだー? cl.exeの件みたいに他のコンポーネントが要るのか?
・--enable-cpp-exceptionsは使えなくなった。
どこかでコンパイルエラー。どこかは忘れた。
warning自体は大分減ったので、もう指定しなくてもいいかも。
・DOM Inspectorが標準で入らなくなった。JavaScript Debuggerがサポートされた。
--enable-extensions=default,inspector,venkmanで標準アドオンに追加される。
2008-03-13
_ [Mozilla][OS/アプリ][PC]
VC8eとVC8sの共存→不可。インストール先を分けられない。
VC9eとSDK6の共存→不可。インストール先を分けられない。
VC9sとSDK6の共存→多分不可。インストール先を分けられない可能性大。
ということはビルドマシン分けることになるか。
つまり、こういうことになる。
・自作機:VC6、VC7.1、VC8、VC9
・CF-W5K:DDK、VC8e、SDK6
自作機に製品版入れるのは、E6850積んでるからmozcrt19.dllとPGOするため。
MacBookを使わないのは、ディスク容量の関係と日常・VOCALOID機であるため。
VC9eがないのは、MASMが用意されてないのと、SDK6とバッティングするため。
てか7系統もビルドしようとする構想自体が酔狂だな、コレ。
いつかCF-W7xにリプレイスしたい。夏モデルに期待。
2008-03-14
_ [Mozilla]
昨夜仕掛けたPGOビルドが完了。エラーにならずに終わってる。動作確認は今夜。
もしダメだったら今日の出張のついでに、Visual Studio 2005とVisual Studio 2008のProfessional確保に走るところだったよ。
よかったよかった。
2008-03-15
_ [Mozilla]
client.mkのprofiledbuildを見ると、PROFILE_GEN_SCRIPTをmk_add_optionsしろと書いてある。
が、PROFILE_GEN_SCRIPTのサンプルが/path/to/profile-scriptとしか書いてないため、ググってみた。
するとMDC英語版のBuilding with Profile-Guided Optimizationが見つかり、こんな感じに設定されてた。
http://developer.mozilla.org/en/docs/Building_with_Profile-Guided_Optimization
mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) $(MOZ_OBJDIR)/_profile/pgo/profileserver.py'
現在再ビルド中。
_ [Mozilla]
dist/bin/components以下の.dllがpgomerge.pyされてない。
--disable-libxulしたときのdist/bin/componentsに対しては考慮されてないようだ。
rules.mkではdist/binに対してのみ実行されてるので直す。
ifdef BINARY_BASENAME
ifdef IS_COMPONENT
export::
$(PYTHON) $(topsrcdir)/build/win32/pgomerge.py \
$(BINARY_BASENAME) $(DIST)/bin/components
else
export::
$(PYTHON) $(topsrcdir)/build/win32/pgomerge.py \
$(BINARY_BASENAME) $(DIST)/bin
endif
endif
よし、OK。
2008-03-16
_ [Mozilla]
多分今度はOK。ビルド所要時間2時間25分か。
だが、Cygwin環境でエラってる。
環境変数LIBの再設定でmozcrt19.dllへのパスがWindows形式のフルパスになってないようだ。
設定箇所はconfigureで、pythonで書き換えてるようだがCygwinのpythonではうまくいかないらしい。
Cygwinだったらcygpath -wを使うように直して、再ビルド中。
だが、pgomerge.pyでpythonのエラー発生。ダメだコリャ。
2008-03-21
2008-03-22
2008-03-24
2008-03-25
_ [Mozilla]
DDKビルドでIEインポートできないのは、リンク時にcomsupp.libを要求されるためで、これはDDKにも2k3 SDKにも入ってない。(VC8e SP1には入ってる)
で、comsupp.libを自作する方法が綾川さんのところで紹介されているが、実はまだ試していなかった。
http://marilab.hp.infoseek.co.jp/buildfx/vc8.html
何しろパッチの入手先を探すのが大変で、今日ようやく見つけた。
http://forums.mozillazine.org/viewtopic.php?p=1878409#1878409
http://www.rebee.clara.net/comsupp.zip
これでビルドできればIEインポート周りの余計なパッチを消せる。
2008-03-26
2008-03-27
_ [Mozilla]
firefox-2.0.0.12をSDK2k8でビルドしてみた。
・mozilla/xpcom/base/nsStackFrameWin.cpp
明示的にキャストする必要あり。
(PENUMLOADED_MODULES_CALLBACK)callbackEspecial
(PENUMLOADED_MODULES_CALLBACK64)callbackEspecial64
・mozilla/netwerk/system/win32/nsNotifyAddrListener.cpp
こちら参照→http://forums.mozillazine.org/viewtopic.php?p=3247281#3247281
・mozilla/accessible/public/msaa/Makefile.inのrpcndr.libは不要。
・mozilla/accessible/src/msaa/nsAccessNodeWrap.h
mozilla/widget/src/windows/nsWindow.cpp
winable.hはWINABLEAPIがdefineされてない場合のみ。winuser.hは常にincludeする。
また、SDK2k8ではWINVER=500である必要があるため、configure書き直し。orz
一応VC6でもビルドしてエラーはでなかったので、VC9/SDK2k8のリリースも可能に。
なお、diffはcontext形式よりもunified形式の方が良いようだ。
2008-03-28
_ [Mozilla]
VC6ビルドで画面が激しく崩れる現象が発生。前々から分かってはいたが手付かずだった。
ビルドオプションを--enable-optimizeにして余計なものを付けないでおくとおさまった。
余計なものを付けない場合は、MOZ_OPTIMIZEが1に、付けると2に、=noにすると空になる。
で、MOZ_OPTIMIZEを使ってるところであやしいのが、
・config/config.mk
・gfx/cairo/libpixman/src/Makefile.in
まずは、libpixmanのMakefileでMOZ_OPTIMIZEに関係なくpixman-vc71.libを使うようにしたがNG。
config/config.mkではMOZ_OPTIMIZEが1の場合、MODULE_OPTIMIZE_FLAGSをコンパイルオプションに設定していて
これを使ってるところであやしいのが、
・config/mkdepend/Makefile.in
MODULE_OPTIMIZE_FLAGSに-Oxを設定しているが、--enable-optimize=-O2とかにするとMOZ_OPTIMIZEが2になるため
コンパイルオプションには--enable-optimizeで設定したものが使われる。
明日確認してみよう。
あと、VC6でもpixman-vc71.libは必要なさそう。普通に表示できてるっぽい。
_ [飲み]
I渕と1つ先輩のN澤さんが最近誕生日だったので、お誕生日会。
N澤さんによるとららくがお気に入りとのことなので、そこにした。
http://www.week.co.jp/reference/gourmet/01007100a.html
メンツは主賓2人と、M澤さん、Y部、07年度新人のO川、僕。
トマトの肉巻きびゃあ゛ぁ゛゛ぁうまひぃ゛ぃぃ゛
主賓2人の大好物さすがだな。
チーズピザびゃあ゛ぁ゛゛ぁうまひぃ゛ぃぃ゛
具がほぼ全部チーズ。幸せだ。
で、やっぱりI渕がドMだという話になり、そこにO川が共感を覚え、めでたくMつながりに。
ちょっとわかると話すN澤さんもやはりMだと発覚し、めでたくM認定。
I渕とO川の太いパイプを軸にN澤さんを加えた、強力な三角関係ができあがった。
_ なかだ [多分俺っす]