質問: ### 前提・実現したいこと Ruby 2.5.3を使用してcrc32 を実装中に以下のエラーメッセージが発生しました。 ### 発生している問題・エラーメッセージ C:/Ruby25/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59: in `require' C:/Ruby25/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in`require': ca nnot load such file -- digest/crc32 (LoadError) ### 該当のソースコード require 'digest/crc32' p Digest::CRC32.hexdigest(File.open('test.txt','rb').read) ### 試したこと Ruby 2.x.x でも同様でした。 md5では問題がありませんでした。 require 'digest/md5' p Digest::MD5.hexdigest(File.open('test.txt','rb').read) ### 補足情報(FW/ツールのバージョンなど) Windows 7 32bit Ruby 2.5.3
回答: エラーメッセージ内に理由がズバリ書いてあります。 ``` require': cannot load such file -- digest/crc32 (LoadError) ``` cannnot load such file ですから、digest/crc32 に該当するパスに、crc32 のライブラリがないのです。 Ruby 2.5 の標準ライブラリの Digest には、MD5 や SHA256 はあっても、CRC はないのですから、そりゃロードできなくて当たり前です。 そもそもなぜ crc32 ライブラリがあると思ったのです? **CRC32 の演算メソッドは、Zlib モジュール内にあります。**