我正在尝试使用 ruby 1.8 进行文件上传,似乎没有好的开箱即用解决方案。他们似乎都需要一些 3rd 方补丁或项目的分支才能工作。我会使用 mechanize 但我实际上需要与 xml api 交互,而 mechanize 似乎是专门为直接处理网页而设计的。我试过 RestClient 但它没有开箱即用的多部分表单的功能,你必须使用项目的一个分支才能让它工作。Net:HTTP 似乎也存在类似的情况,我认为遏制将是可行的方法,因为无论如何我可能想在我计划做的其他一些事情上使用 multicurl。但是,在我的 Windows 机器上,我似乎无法安装遏制 gem。gem install cream 给出一个错误,说我需要指定 curl 库所在的位置..我' 已经尝试将选项传递给 extconf,但到目前为止还没有运气。这是 gem install 遏制的输出,没有任何选项
C:\ruby\lib\ruby\gems\1.8\gems\curb-0.5.4.0>gem install curb
Building native extensions. This could take a while...
ERROR: Error installing curb:
ERROR: Failed to build gem native extension.
C:/ruby/bin/ruby.exe extconf.rb
checking for curl-config... no
checking for main() in curl.lib... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--srcdir=.
--curdir
--ruby=C:/ruby/bin/ruby
--with-curl-dir
--without-curl-dir
--with-curl-include
--without-curl-include=${curl-dir}/include
--with-curl-lib
--without-curl-lib=${curl-dir}/lib
--with-curllib
--without-curllib
extconf.rb:12: Can't find libcurl or curl/curl.h (RuntimeError)
Try passing --with-curl-dir or --with-curl-lib and --with-curl-include
options to extconf.
Gem files will remain installed in C:/ruby/lib/ruby/gems/1.8/gems/curb-0.5.4.0 for inspection.
Results logged to C:/ruby/lib/ruby/gems/1.8/gems/curb-0.5.4.0/ext/gem_make.out
有什么想法可以让它发挥作用吗?