私はこれについての助けに感謝します:私は私のcライブラリに拡張機能を書きたいです。ライブラリlibzmq(C ++で記述)を使用するファイルzmq.cppを作成しました。
ruby extconf.rbを使用してmakefileを作成してから、nmakeを実行します。それはすべてうまくいった。Nmakeで生成されたファイル
librbzmq-i386-mswin32.def
librbzmq-i386-mswin32.lib
librbzmq-i386-mswin32.exp
librbzmq.so librbzmq.so.manifest
これはすべてWindowsXPで行われました。
次に、テストプログラムがあります。最初の行には次のようなものがあります。
require 'librbzmq'
を使用してテストプログラムを実行しようとすると
ruby -I"C:\Documents and Settings\Kustarova\wcopy\trunk\librbzmq\librbzmq-i386-mswin32.lib" -I"C:\Documents and Settings\Kustarova\wcopy\trunk\windows\Debug\libzmq.lib" ./rb_remote_lat.rb
私は得る
rb-remote_lat.rb:1:in `require':no such file to load -- librbzmq (LoadError) from ./rb_remote_lat.rb:1:in `<main>'
ファイルの場所が正しいので、確認しました。
あなたはそれを実行する方法を知っていますか?
注:これはすべてubuntuで行い、正常に機能しました。makefileを作成し、ここと同様のコマンドを使用してテストアプリケーションを実行できました(パスのみが異なります)。
ありがとう