SketchUp で rubygems を要求する方法をオンラインで検索しようとしましたが、具体的な方法を見つけることができませんでした。
以下は私のプラグインです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つの質問
- 一部のファイルは正しく要求できるのに、一部のファイルは
C:/Ruby186/lib/ruby/1.8/i386-mingw32
LoadError を要求できないのはなぜですか? - 最後の 2 行が両方を返すのはなぜ
true
ですか? 読み込みの問題と何か関係がありますか?
環境
- ウィンドウズ7
- ルビー 1.8.6
- スケッチアップ 8.0.14346
PS。ここで別の同じ問題