みやむこです。

(本当は昨日試したかったのですが) HP-UX で make してみました。

  % uname -srm
  HP-UX B.11.11 9000/861

mkmf.rb の have_library が正しく動作せず、libtinfo が
存在しないのにリンクしようとして make できませんでした。

  ld: Can't find library for -ltinfo

mkmf.log には以下のようなログが出ていました。

  have_library: checking for tgetent() in -ltinfo... -------------------- yes

  "cc -o conftest -I/work3/home/miyamuko/src/ruby-1.8.1 -I/work3/home/miyamuko/src
  /ruby-1.8.1  -g conftest.c  -L"/work3/home/miyamuko/src/ruby-1.8.1" -L"/usr/loca
  l/lib"    -E    -lruby-static -ltinfo  -ldld -lcrypt -lm   -lc"
  # 1 "conftest.c"


  int main() { return 0; }
  int t() { tgetent(); return 0; }
  checked program was:
  /* begin */

  /*top*/
  int main() { return 0; }
  int t() { tgetent(); return 0; }
  /* end */

  --------------------

cc の -E が邪魔なのでとりあえず  configure から -E を削除しました。
でも、これだと ld からも -E オプションが消えてしまうのでだめですよねぇ。
どうするのが正しいやりかたなんでしょうか。

--- configure.in.bak    Thu Dec 25 04:19:12 2003
+++ configure.in        Thu Dec 25 16:14:55 2003
@@ -837,9 +837,9 @@
   fi

   case "$target_os" in
-       hpux*)          DLDFLAGS="$DLDFLAGS -E"
+       hpux*)          DLDFLAGS="$DLDFLAGS"
                        : ${LDSHARED='ld -b'}
-                       XLDFLAGS="$XLDFLAGS -Wl,-E"
+                       XLDFLAGS="$XLDFLAGS -Wl"
                        rb_cv_dlopen=yes;;
        solaris*)       if test "$GCC" = yes; then
                           : ${LDSHARED='$(CC) -Wl,-G'}


--
みやむこ