otp-R14B04とwxWidgets-2.8.12

otp-R14B04がリリースされたのでビルドしてみると、wxWidgetsを使うアプリケーションを起動しようとするとエラーとなることが分かった。

=ERROR REPORT==== 7-Jun-2009::12:17:09 ===
WX Failed loading "wxe_driver"@"/usr/local/lib/erlang/lib/wx-0.98.1/
priv/i386-apple-darwin9.6.0"
** exception error: {load_driver,"dlopen(/usr/local/lib/erlang/lib/
wx-0.98.1/priv/i386-apple-darwin9.6.0/wxe_driver.so, 2): Symbol not
found: __ZN10wxGLCanvas20MacVisibilityChangedEv\n  Referenced from: /
usr/local/lib/erlang/lib/wx-0.98.1/priv/i386-apple-darwin9.6.0/
wxe_driver.so\n  Expected in: flat namespace\n"}
 in function  wxe_server:start/0
 in call from wx:new/1

うーむ。
otp_src_R14B04/lib/wx
のREADMEを読んでみると、

You will need wxWidgets-2.8.*

On mac I built wxwidgets with:

mkdir MYBUILD; cd MYBUILD
../configure --with-opengl --enable-unicode --enable-graphics_ctx \
--enable-gnomeprint \ On unix only
--disable-shared
make && make install
cd contrib/src/stc/
make && make install

ということで、まずはwxWidgetsの再インストールから開始。その後、erlang本体のビルドして動作確認。

$ erl
Erlang R14B04 (erts-5.8.5) [source] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]

Eshell V5.8.5 (abort with ^G)
1> Wx=wx:new().
{wx_ref,0,wx,[]}
2> q().
ok

ということで一段落。