たむらです。 nobu.nakada / nifty.ne.jp wrote: > なかだです。 > > At 14 Jul 2001 08:09:32 +0900, > tamra / mail.goo.ne.jp wrote: > > ■isc_expand_dpb() でエラーになる問題 > > なかださんから指摘があったように、APIリファレンスガイドに > > 『Windows 95 およびWindows NT では,引数の個数が固定されている関数 > > には,常に標準呼び出し規約(_stdcall)を使用します。引数の個数が > > 可変の関数はisc_start_transaction(), > > isc_expand_dpb(),isc_event_block() の3 つだけです。これらにはcdecl > > 規約を使用します。』 > > とありました。いままでの所インポートライブラリの作り方の問題か > > BCC以外では動いてません。 > > うーん、パッチを見るとInit_interbase()が__stdcallになってるだ > けのような気がしますが、Interbaseのヘッダにあるプロトタイプ宣言 > にはすでに__stdcallはついてましたか、ひょっとして。 ついてますねぇ。IntetBaseは、Win/Linux同じ Ibase.h というファイルを インクルードします。この辺りもうちょっと調べてみます。 > # なんかリバースパッチになってますが。 済みません、はずかしぃ〜。 > > ■export問題 > > Borland C++ Compiler 5.5 (BCC)にて、interbase.c をいぢらずに、 > > interbase.so でシンボルをエクスポートする方法が判らなかったので、 > > ソースをいぢりました。 > > BCCじゃ.defファイルは効きませんか。リンクのところではコメント > アウトしてあるようですが、エラーになりました? > > > オプションとかで対応できると思われるのですが、vc++でのオプションをどなたか > > 教えていただけませんか。 > > ((* ruby.h は触らずに、-Dinline指定で大丈夫になりました。*)) > > vc++でのオプションというのは? #define inlineを入れるなら > ruby.hじゃなくてconfig.hでしょう。bcc用のconfig.hを作ったほうが > いいのかも。 Makefile の中で、bcc32 のオプションで、-Dinlineしたということです。 ilink32 のオプションで、.def 見るようなことが出来るのかなぁと bccのヘルプとか web で調べた限りでは判らなかったのですが。 たむら けんいち