わたなべです.

SUGAI Norihiko <sugai904 / moteco.co.jp> writes:

:cygwin (1.1.2s ?) で eruby-0.0.8 をコンパイルしようとしていますが、
:以下のようなエラーで、うまくコンパイルできないみたいです。

基本的には [ruby-list:22562] です.

:とりあえず libruby.a をリンクしているのにどうして、
: undefined reference とかいわれるのかがわからないです。

-DUSEIMPORTLIB がないのと,

:Ruby 1.4.4 は、
:./configure --enable-shared
:で、自分でコンパイルしてインストールしたもので、

これが cygwin b20.1 でコンパイルされてるからかな(勝手な想像).

:# ERb であそべってことなのかな...

基本的に ruby 1.4.x は cygwin b20.1 だけを対象にしてます.
cygwin 1.1.x は ruby 1.5.4.

-- 
わたなべひろふみ

eruby --- Makefile.RB.orig Wed May 24 14:12:00 2000 +++ Makefile.RB Tue May 30 00:16:56 2000 @@ -65,3 +65,3 @@ -CFLAGS = -I$(hdrdir) #{CFLAGS} +CFLAGS = #{CONFIG["CCDLFLAGS"]} -I$(hdrdir) #{CFLAGS} LDFLAGS = #{CONFIG["LDFLAGS"]} @@ -75,3 +75,3 @@ LIBRUBYARG = #{$LIBRUBYARG} -TARGET = eruby +TARGET = eruby#{CONFIG["EXEEXT"]} --- eruby_main.c.orig Thu May 18 17:09:13 2000 +++ eruby_main.c Tue May 30 00:10:30 2000 @@ -18,5 +18,5 @@ -extern VALUE ruby_errinfo; -extern VALUE rb_stdout; -extern VALUE rb_defout; +EXTERN VALUE ruby_errinfo; +EXTERN VALUE rb_stdout; +EXTERN VALUE rb_defout;
diff -u1 ruby-1.4.4/defines.h c144/defines.h --- ruby-1.4.4/defines.h Tue Oct 12 18:11:12 1999 +++ c144/defines.h Mon May 29 23:20:55 2000 @@ -36,2 +36,11 @@ +#if defined __CYGWIN__ +# undef EXTERN +# if defined USEIMPORTLIB +# define EXTERN extern __declspec(dllimport) +# else +# define EXTERN extern __declspec(dllexport) +# endif +#endif + #ifndef EXTERN diff -u1 ruby-1.4.4/intern.h c144/intern.h --- ruby-1.4.4/intern.h Mon Feb 7 18:04:23 2000 +++ c144/intern.h Tue May 30 00:02:53 2000 @@ -211,4 +211,4 @@ /* parse.y */ -extern int ruby_sourceline; -extern char *ruby_sourcefile; +EXTERN int ruby_sourceline; +EXTERN char *ruby_sourcefile; #define yyparse rb_yyparse diff -u1 ruby-1.4.4/ruby.h c144/ruby.h --- ruby-1.4.4/ruby.h Mon Apr 3 23:50:09 2000 +++ c144/ruby.h Mon May 29 23:21:17 2000 @@ -73,12 +73,2 @@ -#if defined(__CYGWIN32__) -#if defined(USEIMPORTLIB) -#include "import.h" -#else -#if !defined(__CYGWIN__) -#define environ (*__imp___cygwin_environ) -#endif -#endif -#endif - #ifdef _AIX