require 'ffi' module LibC extend FFI::Library ffi_lib FFI::Platform::LIBC attach_function :strdup, [:string], :pointer attach_function :free, [:pointer], :void end string = "Hello, World!" duplicate = LibC.strdup(string) puts duplicate.get_string(0) LibC.free(duplicate)