久保@茅ヶ崎市です。

Kenji Sato/佐藤 健司 <ken / kcom.co.jp> writes:

>>warning の件に関しては、以下のパッチを当ててください。
>>ちょうど、昨日の深夜に直したところです。
>>
>>--- src/handle.c~	2002-09-12 23:13:58.000000000 +0900
>>+++ src/handle.c	2003-02-17 01:32:52.000000000 +0900
>>@@ -142,6 +142,8 @@
>>     break;
>>   case OCI_HTYPE_STMT:
>>     obj = Data_Make_Struct(cOCIStmt, oci8_handle_t, oci8_handle_mark, oci8_handle_cleanup, h);
>>+	rb_ivar_set(obj, oci8_id_define_array, Qnil);
>>+	rb_ivar_set(obj, oci8_id_bind_array, Qnil);
>>     break;
>>   case OCI_HTYPE_SERVER:
>>     obj = Data_Make_Struct(cOCIServer, oci8_handle_t, oci8_handle_mark, oci8_handle_cleanup, h);
>>
>>では、再見
>
> このパッチを当てましたが、make 時の ld の warning は消えないようです。

あっ、make 時の warning でしたか。

別件で "uninitialized instance variables" の warning が出るという報告
を受けたばかりだったので、そちらの warning かと思いました。

> ----------
> gcc -Wl,-G -L/usr/local/lib/ruby/1.6/sparc-solaris2.8 -L/usr/local/lib -o oci8li
> b.so oci8.o handle.o const.o env.o error.o svcctx.o server.o session.o stmt.o de
> fine.o bind.o describe.o descriptor.o param.o lob.o oradate.o oranumber.o attr.o
>   -lc -L/opt/SUNWcluster/lib -R/opt/SUNWcluster/lib -o build -L/app/oracle/produ
> ct/9.2.0.1.0/rdbms/lib/ -L/app/oracle/product/9.2.0.1.0/lib/  -lclntsh -lnbeq9 -
> lnhost9 -lnus9 -lnldap9 -lldapclnt9 -lnsslb9 -lnnis9 -lnoname9 -lntcp9 -lntcps9
> -lnsslb9 -lntcp9 -lntns9 -lnsl -lsocket -lgen -ldl -R/app/oracle/product/9.2.0.1
> .0/lib -laio -lposix4 -lkstat -lm -lthread -ldl -lcrypt -lm
> ld: 警告: オプション -o が複数回存在します。最初の設定で行います。
> ----------
> 上記3行目の " -o build" を単に含まなければいいような気がします。

なんで Solaris では -o build が出てくるのか理解できないのですが、とり
あえずは src/oraconf.rb の 205 行目付近、

              # found a line where a compiler runs.
              libs = line.gsub(/-o\s+\/dev\/null/, "")
            end

を

              # found a line where a compiler runs.
              libs = line.gsub(/-o\s+\/dev\/null/, "")
              libs.gsub!((/-o\s+build/, "")
            end

に変えようかと思います。

では、再見
-- 
神奈川県茅ヶ崎市在住 久保 健洋
email: kubo / jiubao.org
web:   http://www.jiubao.org
GnuPG fingerprint = 5F7B C8EF CA16 57D0 FDE1  9F47 C001 1F93 AC08 2262