[#36686] 1.1 < 61.1 - 60.0 — Shin-ichiro HARA <sinara@...>

原です。

19 messages 2002/12/06

[#36770] www.ruby-lang.orgリニューアル準備のお知らせ — TADA Tadashi <sho@...>

ruby-lang.orgのwebmasterチームでは、タイムリーな情報提供と使いやすい

11 messages 2002/12/16

[ruby-list:36870] Re: Cygwinで拡張モジュールが生成されない

From: 堀川 久 <vzw00011@...>
Date: 2002-12-29 06:03:17 UTC
List: ruby-list #36870
こんにちは。

WATANABE Hirofumi wrote
in <20021224002124.458909.eban@os.rim.or.jp>
>> Rubyインタプリタをコンパイルすると,
>>   curses, dbm, digest
>> しか拡張モジュールが作られないのですが,何が不味いのでしょうか。
>
>configure時のオプションは?
>それとgccのversionは?
>他のライブラリに依存しないetc,fcntl,nkf等もだめですか?

Cygwinを更新して再び試しました。

$ uname -a
CYGWIN_NT-5.1 GRAPE 1.3.18(0.69/3/2) 2002-12-25 15:37 i686 unknown

$ gcc --version
gcc (GCC) 3.2 20020927 (prerelease)

configureのオプションは,
    ./configure --enable-shared

extmk.logの内容は,
gcc -E  -I/src/ruby/ruby -I/src/ruby/ruby -g -O2     conftest.c
gcc -o conftest -I/src/ruby/ruby -I/src/ruby/ruby -g -O2  
-Wl,--stack,0x02000000    -L${prefix}/lib conftest.c -ldb1 -ldb2 -ldb   
-lcrypt 
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld: 
cannot find -ldb1
collect2: ld returned 1 exit status
gcc -E  -I/src/ruby/ruby -I/src/ruby/ruby -g -O2     conftest.c
(中略)
gcc -E  -I/src/ruby/ruby -I/src/ruby/ruby -g -O2     conftest.c
gcc -o conftest -I/src/ruby/ruby -I/src/ruby/ruby -g -O2  
-Wl,--stack,0x02000000    -L${prefix}/lib conftest.c -ldbm -ldb1 -ldb2 
-ldb   -lcrypt 
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld: 
cannot find -ldbm
collect2: ld returned 1 exit status
gcc -E  -I/src/ruby/ruby -I/src/ruby/ruby -g -O2     conftest.c
gcc -o conftest -I/src/ruby/ruby -I/src/ruby/ruby -g -O2  
-Wl,--stack,0x02000000    -L${prefix}/lib conftest.c -lgdbm -ldbm 
-ldb1 -ldb2 -ldb   -lcrypt 
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld: 
cannot find -ldbm
collect2: ld returned 1 exit status
gcc -E  -I/src/ruby/ruby -I/src/ruby/ruby -g -O2     conftest.c

libdb1, libdbmは,インストールされていませんでした。libdb2, 
libdb-3.1, libgdbmはインストールされています。

ext/socketに降りて,
  ruby -d extconf.rb
すると,次のようになりました。
checking for netinet/udp.h... checking for inet_ntop()... no
checking for inet_ntoa()... no
checking for inet_pton()... no
checking for inet_aton()... no
checking for getservbyport()... no
checking for arpa/inet.h... no
checking for arpa/nameser.h... no
checking for resolv.h... checking for sys/un.h... no
checking for socket()... no

mkmf.logの内容は,
gcc -o conftest -I/usr/local/lib/ruby/1.6/i686-cygwin -g -O2   
-Dss_family=__ss_family -Dss_len=__ss_len -Wl,--stack,0x02000000  
conftest.c   -lcrypt
gcc -o conftest -I/usr/local/lib/ruby/1.6/i686-cygwin -g -O2   
-Dss_family=__ss_family -Dss_len=__ss_len -Wl,--stack,0x02000000  
conftest.c   -lcrypt
gcc -o conftest -I/usr/local/lib/ruby/1.6/i686-cygwin -g -O2   
-Dss_family=__ss_family -Dss_len=__ss_len -Wl,--stack,0x02000000  
conftest.c   -lcrypt
gcc -E -E  -Dss_family=__ss_family -Dss_len=__ss_len 
-I/usr/local/lib/ruby/1.6/i686-cygwin -g -O2   conftest.c
no
gcc -o conftest -I/usr/local/lib/ruby/1.6/i686-cygwin -g -O2   
-Dss_family=__ss_family -Dss_len=__ss_len -Wl,--stack,0x02000000  
conftest.c   -lcrypt

何がどうなっているんでしょうか。

-- 
HORIKAWA Hisashi (in Kanji: 堀川 久)
Netsphere Laboratories  http://www.nslabs.jp/

In This Thread