1

SketchUp で ruby​​gems を要求する方法をオンラインで検索しようとしましたが、具体的な方法を見つけることができませんでした。

以下は私のプラグインですC:\Program Files\Google\Google SketchUp 8\Plugins\gems.rb

$: << 'C:/Ruby186/lib/ruby/site_ruby/1.8'
$: << 'C:/Ruby186/lib/ruby/site_ruby/1.8/i386-msvcrt'
$: << 'C:/Ruby186/lib/ruby/site_ruby'
$: << 'C:/Ruby186/lib/ruby/1.8'
$: << 'C:/Ruby186/lib/ruby/1.8/i386-mingw32'
$: << '.'
require 'rubygems'

そして、次のエラーが発生しました。

Error: #<LoadError: C:/Ruby186/lib/ruby/1.8/i386-mingw32/thread.so: 127: The specified procedure could not be found.   - C:/Ruby186/lib/ruby/1.8/i386-mingw32/thread.so>
(eval):14
C:/Ruby186/lib/ruby/1.8/thread.rb:5
C:/Ruby186/lib/ruby/site_ruby/1.8/rubygems.rb:11:in `require'
C:/Ruby186/lib/ruby/site_ruby/1.8/rubygems.rb:11
(eval):14:in `require'
(eval):14

ただし、thread.soは正確にC:/Ruby186/lib/ruby/1.8/i386-mingw32次のとおりです。

C:\Ruby186\lib\ruby\1.8\i386-mingw32>ls
Win32API.so    digest.so      fcntl.so   openssl.so   sdbm.so      version.h
bigdecimal.so  dl.h           gdbm.so    racc         socket.so    win32
config.h       dl.so          iconv.so   rbconfig.rb  st.h         win32ole.so
curses.so      dlconfig.h     intern.h   re.h         stringio.so  zlib.so
dbm.so         dln.h          io         regex.h      strscan.so
defines.h      enumerator.so  missing.h  ruby.h       syck.so
digest         env.h          nkf.so     rubyio.h     thread.so
digest.h       etc.so         node.h     rubysig.h    util.h

SketchUp Ruby パネルでテストしようとしています:

> require 'bigdecimal'
true
> require 'curses'
true
> require 'dbm'
true
> require 'digest'
true
> require 'digest/md5'
Error: #<LoadError: C:/Ruby186/lib/ruby/1.8/i386-mingw32/digest/md5.so: 126: The specified procedure could not be found.   - C:/Ruby186/lib/ruby/1.8/i386-mingw32/digest/md5.so>
(eval):14
(eval):14
> require 'digest\md5'
Error: #<LoadError: C:/Ruby186/lib/ruby/1.8/i386-mingw32/digest\md5.so: 126: The specified procedure could not be found.   - C:/Ruby186/lib/ruby/1.8/i386-mingw32/digest\md5.so>
(eval):14
(eval):14
> require 'digest/sha1'
Error: #<LoadError: C:/Ruby186/lib/ruby/1.8/i386-mingw32/digest/sha1.so: 126: The specified procedure could not be found.   - C:/Ruby186/lib/ruby/1.8/i386-mingw32/digest/sha1.so>
(eval):14
(eval):14
> require 'digest\sha1'
Error: #<LoadError: C:/Ruby186/lib/ruby/1.8/i386-mingw32/digest\sha1.so: 126: The specified procedure could not be found.   - C:/Ruby186/lib/ruby/1.8/i386-mingw32/digest\sha1.so>
(eval):14
(eval):14
> require 'digest\sha2'
true
> require 'digest/sha2'
true

2つの質問

  1. 一部のファイルは正しく要求できるのに、一部のファイルはC:/Ruby186/lib/ruby/1.8/i386-mingw32LoadError を要求できないのはなぜですか?
  2. 最後の 2 行が両方を返すのはなぜtrueですか? 読み込みの問題と何か関係がありますか?

環境

  • ウィンドウズ7
  • ルビー 1.8.6
  • スケッチアップ 8.0.14346

PS。ここで別の同じ問題

4

0 に答える 0