計算機メモ目次 (目的のページと内容が一致しない場合, 目次から探してください)

Solaris8 上で guile 2.0.5 を構築する


guile 
  GNU Ubiquitous Intelligent Language for Extensions
  GNU のソフトウェアをインストールするときに何かと必要

構築のための準備
  gcc を使うのが無難
  以下のライブラリが必要

    gmp, libtool, libunistring
      以上 GNU
      いずれも ./configure; gmake; gmake install

    libffi
      http://sourceware.org/libffi/
      configure でトップにできる Makefile はうまく動かないので次のようにする
      ./configure; cd sparc-sun-solaris2.8; gmake; cp ../install-sh .; gmake install

    bdw-gc
      http://www.hpl.hp.com/personal/Hans_Boehm/gc/
      ./configure; gmake; gmake install

ビルド
  ソースの修正
    Solaris8 には lround がないので, これを使っている libguile/gc.c に
    下記のように lround の簡単なコードを加える.

*** libguile/gc.c.orig        Mon Feb 20 22:03:17 2012
--- libguile/gc.c       Mon Feb 20 22:28:44 2012
***************
*** 91,96 ****
--- 91,105 ----
  static SCM scm_protects;
  #endif
  
+ #if defined(__sun)
+ #define lround(x) my_lround(x) 
+ static long my_lround(double x) 
+ { 
+         return (long) ((x) >= 0 ? (x) + 0.5 : (x) - 0.5); 
+ } 
+ 
+ #endif
+ 
  #if (SCM_DEBUG_CELL_ACCESSES == 1)

コンフィグレーション

  BDW_GC_CFLAGS="-I/usr/local/include" \
  BDW_GC_LIBS="-L/usr/local/lib -lgc" \
    ./configure

メークとインストール

  gmake
  gmake install

  ※ UTF-8 がない環境では info ファイルを作成できないがここでは無視してよい
     ただ, gmake が途中で終わってしまうので以下を追加して実行

     gmake install-libguileincludeHEADERS


計算機メモ目次 (目的のページと内容が一致しない場合, 目次から探してください)
海洋大循環分野
daigo@ocg.aori.u-tokyo.ac.jp