Kogule, Ryo
aqua_dabbl****@mac*****
2003年 7月 18日 (金) 18:41:42 JST
古暮でございます。 On 2003.07.18, at 09:00, Hisazumi Kenji <nel****@soran*****> wrote: >libgauche.dylib を dynamic library としてリンクするのではなく、 >loadable module (bundle) としてリンクしてるためだと思います。 > >libgauche_LDFLAGS = -dynamiclib -flat_namespace -undefined suppress -o > >とかにすると、コンパイルできます。 この問題,0.7 の uvector と同じ問題でしょうか? 大抵の elf 系 system では,shared library と dynamic load module が同じもので使い廻しが利くようですが,Darwin/Mac OS X の場合別物なの で,この辺の問題が出るようです。 現在 Gauche 関連を DarwinPorts という package system 用に纏めている 最中なのですが,そちらでは以下の様にしています。まだ検証途中ですが…… 纏め終わったら gauche-devel の方に報告する予定ですが,ご参考まで。 --- src/gauche-config.in.orig Tue Apr 22 08:07:28 2003 +++ src/gauche-config.in Fri Jul 18 15:05:50 2003 @@ -89,7 +89,7 @@ -V) echo $gauche_version;; -I) echo "-I$gauche_incdir $local_incdir";; -L) echo "-L$gauche_archdir $local_libdir";; - -l) echo "-lgauche-uvector -lgauche $gauche_libs";; + -l) echo "-lgauche-uvector-shlib -lgauche $gauche_libs";; --cc) echo $cc;; --ac) echo $gauche_aclocaldir;; --reconfigure) echo ./configure $gauche_configure_args;; --- ext/uvector/Makefile.in.orig Fri May 30 20:41:22 2003 +++ ext/uvector/Makefile.in Fri Jul 18 15:04:17 2003 @@ -4,7 +4,7 @@ SCM_CATEGORY = gauche -LIBFILES = libgauche-uvector.la +LIBFILES = libgauche-uvector-shlib.la libgauche-uvector.la SCMFILES = array.scm uvector.scm HDRFILES = gauche/uvector.h @@ -16,8 +16,11 @@ uvector_OBJECTS = uvector_head.lo uvector.lo uvutil.lo \ uvinit.lo uvlib.lo uvector_tail.lo -libgauche-uvector.la : $(uvector_OBJECTS) - $(MODLINK) $(uvector_OBJECTS) $(EXT_LIBGAUCHE) +libgauche-uvector.la : libgauche-uvector-shlib.la + $(MODLINK) libgauche-uvector-shlib.la $(EXT_LIBGAUCHE) + +libgauche-uvector-shlib.la : $(uvector_OBJECTS) + $(LINK) $(uvector_OBJECTS) $(EXT_LIBGAUCHE) uvector_head.c uvector_tail.c : $(GAUCHE_CONFIG) --fixup-extension uvector