w3m再構築メモ
w3mをgmailに対応させてzaurusで再構築させた時のメモ。
- 環境:
- dev_img-1.6_2
- libssl-0.9.8h: 徒然な覚書のPrivate Pacageを導入
- gc-7.1: 配布元からソースを落としてきて、./configure;makeまでしておく。ビルドされたライブラリは./gc-7.1/.libs以下に生成される。
- libssl-0.9.8h: 配布元からソースを落としてきてファイルの展開までやる。ビルドの時にincludeファイルだけ使う。
- w3m-0.5.2: 徒然な覚書のPrivate Pacageを導入。w3mのバイナリだけ再構築して差し替える。
- 構築メモ
- w3m: Sourceforgeからw3m-0.5.2を導入。gmailに対応させるため以下のファイル(file.c)を修正
--- file.c.orig 2009-01-07 16:15:56.000000000 +0900 +++ file.c 2009-01-06 12:30:30.000000000 +0900 @@ -4240,14 +4240,14 @@ while (*q) { if (!strncasecmp(q, "url=", 4)) { q += 4; - if (*q == '\"') /* " */ + if (*q == '\"' || *q == '\'') /* " */ q++; r = q; while (*r && !IS_SPACE(*r) && *r != ';') r++; s_tmp = Strnew_charp_n(q, r - q); - if (s_tmp->ptr[s_tmp->length - 1] == '\"') { /* " + if (s_tmp->ptr[s_tmp->length - 1] == '\"' || s_tmp->ptr[s_tmp->length - 1] == '\'') { /* " */ s_tmp->length--; s_tmp->ptr[s_tmp->length] = '\0';
-
- libgcをstatic-linkするためにconfigureスクリプトを修正。修正内容はfedora coreのw3m-0.5.1のSRPMに入っていたw3m-0.5-static-libgc.patchを参考に以下のように修正。
--- configure.orig 2007-05-31 21:17:05.000000000 +0900 +++ configure 2009-01-07 16:27:51.000000000 +0900 @@ -7893,7 +7893,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lgc $LIBS" +LIBS="-Wl,-Bstatic -lgc -Wl,-Bdynamic $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -7949,7 +7949,7 @@ { echo "$as_me:$LINENO: result: $ac_cv_lib_gc_GC_init" >&5 echo "${ECHO_T}$ac_cv_lib_gc_GC_init" >&6; } if test $ac_cv_lib_gc_GC_init = yes; then - LIBGC="-lgc" + LIBGC="-Wl,-Bstatic -lgc -Wl,-Bdynamic" fi if test x"$ac_cv_lib_gc_GC_init" = xno; then @@ -7970,7 +7970,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lgc $LIBS" +LIBS="-Wl,-Bstatic -lgc -Wl,-Bdynamic $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -8026,7 +8026,7 @@ { echo "$as_me:$LINENO: result: $ac_cv_lib_gc_GC_init" >&5 echo "${ECHO_T}$ac_cv_lib_gc_GC_init" >&6; } if test $ac_cv_lib_gc_GC_init = yes; then - gclibdir="$dir/lib"; LIBGC="-L$dir/lib -lgc"; break + gclibdir="$dir/lib"; LIBGC="-L$dir/lib -Wl,-Bstatic -lgc -Wl,-Bdynamic"; break fi LDFLAGS="$ldflags"
-
- そしてconfigure。うまくconfigureが通った時の起動オプションを以下にメモ
zaurus$ CFLAGS=" -I$HOME/hdd/devel/gc-7.1/include \ -I/$HOME/hdd/devel/openssl-0.9.8h/include/" \ LDFLAGS=" -L/$HOME/hdd/devel/gc-7.1/.libs/ \ -L/opt/QtPalmtop/lib \ -L/$HOME/hdd/devel/openssl-0.9.8h/" \ ./configure --with-gc=$HOME/hdd/devel/gc-7.1/.libs/ \ --with-ssl=/$HOME/hdd/devel/openssl-0.9.8h/include/ \ --prefix=/opt/QtPalmtop
-
- それからmakeをするとw3mのバイナリが生成される。途中.poファイル関係のビルドでエラーになるが、w3mのバイナリまでは問題無く通っているので当初の目的は達成された。
- これでw3mから"http://mail.google.com/"と"http://mail.google.com/mail/x/"(モバイル用)にアクセスして無事見られる事を確認