I encounter this problem after installing ruby 2.1.0 on my windows computer.
Even it’s just a warning message but it’s kinda annoying.

I’ve found the solution by comment the line on the warning message’s line.
If you are using ruby 2.1.0 and windows the file dl.rb located on \Ruby2.1.0\lib\ruby\2.1.0


require 'dl.so'

begin
  require 'fiddle' unless Object.const_defined?(:Fiddle)
rescue LoadError
end

# this warning is annoying
# # warn "DL is deprecated, please use Fiddle"

module DL
  # Returns true if DL is using Fiddle, the libffi wrapper.
  def self.fiddle?
    Object.const_defined?(:Fiddle)
  end
end


according to http://stackoverflow.com/a/15601984/1446163

The message you received is common when you have ruby 2.0.0p0 (2013-02-24) on top of Windows.

The message “DL is deprecated, please use Fiddle” is not an error; it’s only a warning.

The source is the Deprecation notice for DL introduced some time ago in dl.rb ( see revisions/37910 ).

On Windows the lib/ruby/site_ruby/2.0.0/readline.rb file still requires dl.rb so the warning message comes out when you require ‘irb’ ( because irb requires ‘readline’ ) or when anything else wants to require ‘readline’.

You can open readline.rb with your favorite text editor and look up the code ( near line 4369 ):

if RUBY_VERSION < '1.9.1' require 'Win32API' else require 'dl' class Win32API DLL = {} We can always hope for an improvement to work out this deprecation in future releases of Ruby.

Voila! the message is gone.