{"id":7365,"date":"2014-06-07T02:36:37","date_gmt":"2014-06-07T02:36:37","guid":{"rendered":"https:\/\/unknownerror.org\/index.php\/2014\/06\/07\/bundler-skips-eventmachine-gem-on-win7x64-collection-of-common-programming-errors\/"},"modified":"2014-06-07T02:36:37","modified_gmt":"2014-06-07T02:36:37","slug":"bundler-skips-eventmachine-gem-on-win7x64-collection-of-common-programming-errors","status":"publish","type":"post","link":"https:\/\/unknownerror.org\/index.php\/2014\/06\/07\/bundler-skips-eventmachine-gem-on-win7x64-collection-of-common-programming-errors\/","title":{"rendered":"Bundler skips eventmachine gem on Win7x64-Collection of common programming errors"},"content":{"rendered":"<p>I&#8217;ve installed Ruby200-x64 via installer and DevKit via self extractor and <code>ruby dk.rb install<\/code>:<\/p>\n<pre><code>C:\\Ruby200-x64\\devkit&gt;ruby dk.rb init\nInitialization complete! Please review and modify the auto-generated\n'config.yml' file to ensure it contains the root directories to all\nof the installed Rubies you want enhanced by the DevKit.\n<\/code><\/pre>\n<p>Then I&#8217;ve added <code>- C:\\Ruby200-x64<\/code> into <code>config.yml<\/code><\/p>\n<pre><code>C:\\Ruby200-x64\\devkit&gt;type config.yml\n# This configuration file contains the absolute path locations of all\n# installed Rubies to be enhanced to work with the DevKit. This config\n# file is generated by the 'ruby dk.rb init' step and may be modified\n# before running the 'ruby dk.rb install' step. To include any installed\n# Rubies that were not automagically discovered, simply add a line below\n# the triple hyphens with the absolute path to the Ruby root directory.\n#\n# Example:\n#\n# ---\n# - C:\/ruby19trunk\n# - C:\/ruby192dev\n#\n---\n- C:\\Ruby200-x64\n\nC:\\Ruby200-x64\\devkit&gt;ruby dk.rb install\n[INFO] Updating convenience notice gem override for 'C:\/Ruby200-x64'\n[INFO] Installing 'C:\/Ruby200-x64\/lib\/ruby\/site_ruby\/devkit.rb'\n<\/code><\/pre>\n<p>Then I&#8217;ve installed bundler:<\/p>\n<pre><code>C:\\Ruby200-x64\\devkit&gt;gem install bundler\nFetching: bundler-1.3.5.gem (100%)\nSuccessfully installed bundler-1.3.5\nParsing documentation for bundler-1.3.5\nInstalling ri documentation for bundler-1.3.5\n1 gem installed\n<\/code><\/pre>\n<p>Then I&#8217;ve tried <code>bundle install<\/code> some app with this Gemfile:<\/p>\n<pre><code>if RUBY_PLATFORM.downcase.include?(\"mswin\") || RUBY_PLATFORM.downcase.include?(\"mingw\")\n  gem \"win32console\"\nend\n\ngem \"eventmachine\", \"1.0.3\"\ngem \"thin\"\ngem \"sinatra\", \"1.4.2\"\ngem \"rack\", \"1.5.2\"\ngem \"em-websocket\", \"~&gt; 0.3.6\"\ngem \"jsmin\", \"~&gt; 1.0.1\"\ngem \"ansi\"\ngem \"term-ansicolor\", :require =&gt; \"term\/ansicolor\"\ngem \"dm-core\"\ngem \"json\"\ngem \"data_objects\"\ngem \"dm-sqlite-adapter\"\ngem \"parseconfig\"\ngem \"erubis\"\ngem \"dm-migrations\"\ngem \"msfrpc-client\"\n\n# notifications\ngem \"twitter\"\nsource \"http:\/\/rubygems.org\"\n<\/code><\/pre>\n<p>No any error but there is no <strong>eventmachine<\/strong>:<\/p>\n<pre><code>G:\\Distrs\\someapp&gt;bundle install\nFetching gem metadata from http:\/\/rubygems.org\/.........\nFetching gem metadata from http:\/\/rubygems.org\/..\nResolving dependencies...\nInstalling addressable (2.3.5)\nInstalling ansi (1.4.3)\nInstalling daemons (1.1.9)\nInstalling data_objects (0.10.13)\nInstalling dm-core (1.2.1)\nInstalling dm-do-adapter (1.2.0)\nInstalling dm-migrations (1.2.0)\nInstalling dm-sqlite-adapter (1.2.0)\nInstalling em-websocket (0.3.8)\nInstalling erubis (2.7.0)\nInstalling multipart-post (1.2.0)\nInstalling faraday (0.8.8)\nInstalling jsmin (1.0.1)\nInstalling json (1.8.1)\nInstalling librex (0.0.68)\nInstalling msgpack (0.5.6)\nInstalling msfrpc-client (1.0.1)\nInstalling multi_json (1.8.2)\nInstalling parseconfig (1.0.2)\nInstalling rack (1.5.2)\nInstalling rack-protection (1.5.1)\nInstalling simple_oauth (0.2.0)\nInstalling tilt (1.4.1)\nInstalling sinatra (1.4.2)\nInstalling tins (0.13.1)\nInstalling term-ansicolor (1.2.2)\nInstalling thin (1.6.1)\nInstalling twitter (4.8.1)\nUsing bundler (1.3.5)\nYour bundle is complete!\nUse `bundle show [gemname]` to see where a bundled gem is installed.\n<\/code><\/pre>\n<p>Gemfile.lock:<\/p>\n<pre><code>GEM\n  remote: http:\/\/rubygems.org\/\n  specs:\n    addressable (2.3.5)\n    ansi (1.4.3)\n    daemons (1.1.9)\n    data_objects (0.10.13)\n      addressable (~&gt; 2.1)\n    dm-core (1.2.1)\n      addressable (~&gt; 2.3)\n    dm-do-adapter (1.2.0)\n      data_objects (~&gt; 0.10.6)\n      dm-core (~&gt; 1.2.0)\n    dm-migrations (1.2.0)\n      dm-core (~&gt; 1.2.0)\n    dm-sqlite-adapter (1.2.0)\n      dm-do-adapter (~&gt; 1.2.0)\n      do_sqlite3 (~&gt; 0.10.6)\n    do_sqlite3 (0.10.13-x86-mingw32)\n      data_objects (= 0.10.13)\n    em-websocket (0.3.8)\n      addressable (&gt;= 2.1.1)\n      eventmachine (&gt;= 0.12.9)\n    erubis (2.7.0)\n    eventmachine (1.0.3-x86-mingw32)\n    faraday (0.8.8)\n      multipart-post (~&gt; 1.2.0)\n    jsmin (1.0.1)\n    json (1.8.1)\n    librex (0.0.68)\n    msfrpc-client (1.0.1)\n      librex (&gt;= 0.0.32)\n      msgpack (&gt;= 0.4.5)\n    msgpack (0.5.6)\n    multi_json (1.8.2)\n    multipart-post (1.2.0)\n    parseconfig (1.0.2)\n    rack (1.5.2)\n    rack-protection (1.5.1)\n      rack\n    simple_oauth (0.2.0)\n    sinatra (1.4.2)\n      rack (~&gt; 1.5, &gt;= 1.5.2)\n      rack-protection (~&gt; 1.4)\n      tilt (~&gt; 1.3, &gt;= 1.3.4)\n    term-ansicolor (1.2.2)\n      tins (~&gt; 0.8)\n    thin (1.6.1)\n      daemons (&gt;= 1.0.9)\n      eventmachine (&gt;= 1.0.0)\n      rack (&gt;= 1.0.0)\n    tilt (1.4.1)\n    tins (0.13.1)\n    twitter (4.8.1)\n      faraday (~&gt; 0.8, &lt; 0.10)\n      multi_json (~&gt; 1.0)\n      simple_oauth (~&gt; 0.2)\n    win32console (1.3.2-x86-mingw32)\n\nPLATFORMS\n  x86-mingw32\n\nDEPENDENCIES\n  ansi\n  data_objects\n  dm-core\n  dm-migrations\n  dm-sqlite-adapter\n  em-websocket (~&gt; 0.3.6)\n  erubis\n  eventmachine (= 1.0.3)\n  jsmin (~&gt; 1.0.1)\n  json\n  msfrpc-client\n  parseconfig\n  rack (= 1.5.2)\n  sinatra (= 1.4.2)\n  term-ansicolor\n  thin\n  twitter\n  win32console\n<\/code><\/pre>\n<p>No eventmachine is installed:<\/p>\n<pre><code>G:\\Distrs\\someapp&gt;gem list\n\n*** LOCAL GEMS ***\n\naddressable (2.3.5)\nansi (1.4.3)\nbigdecimal (1.2.0)\nbundler (1.3.5)\ndaemons (1.1.9)\ndata_objects (0.10.13)\ndm-core (1.2.1)\ndm-do-adapter (1.2.0)\ndm-migrations (1.2.0)\ndm-sqlite-adapter (1.2.0)\nem-websocket (0.3.8)\nerubis (2.7.0)\nfaraday (0.8.8)\nio-console (0.4.2)\njsmin (1.0.1)\njson (1.8.1, 1.7.7)\nlibrex (0.0.68)\nminitest (4.3.2)\nmsfrpc-client (1.0.1)\nmsgpack (0.5.6)\nmulti_json (1.8.2)\nmultipart-post (1.2.0)\nparseconfig (1.0.2)\npsych (2.0.0)\nrack (1.5.2)\nrack-protection (1.5.1)\nrake (0.9.6)\nrdoc (4.0.0)\nsimple_oauth (0.2.0)\nsinatra (1.4.2)\nterm-ansicolor (1.2.2)\ntest-unit (2.0.0.0)\nthin (1.6.1)\ntilt (1.4.1)\ntins (0.13.1)\ntwitter (4.8.1)\n<\/code><\/pre>\n<p>Trying to run someapp:<\/p>\n<pre><code>G:\\Distrs\\someapp&gt;ruby someapp\nC:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/thin-1.6.1\/lib\/thin.rb:7:in `require': cannot load such file -- eventmachine (LoadError)\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/thin-1.6.1\/lib\/thin.rb:7:in `'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:72:in `require'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:72:in `block (2 levels) in require'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:70:in `each'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:70:in `block in require'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:59:in `each'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:59:in `require'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler.rb:132:in `require'\n        from G:\/Distrs\/someapp\/core\/loader.rb:10:in `'\n\n        from C:\/Ruby200-x64\/lib\/ruby\/2.0.0\/rubygems\/core_ext\/kernel_require.rb:45:in `require'\n        from C:\/Ruby200-x64\/lib\/ruby\/2.0.0\/rubygems\/core_ext\/kernel_require.rb:45:in `require'\n        from someapp:32:in `'\n<\/code><\/pre>\n<p>OK, trying install eventmachine via <code>gem install eventmachine<\/code>:<\/p>\n<pre><code>G:\\Distrs\\someapp&gt;gem install eventmachine\nFetching: eventmachine-1.0.3.gem (100%)\nTemporarily enhancing PATH to include DevKit...\nBuilding native extensions.  This could take a while...\nERROR:  Error installing eventmachine:\n        ERROR: Failed to build gem native extension.\n\n    C:\/Ruby200-x64\/bin\/ruby.exe extconf.rb\nchecking for main() in -lssl... no\nchecking for rb_trap_immediate in ruby.h,rubysig.h... no\nchecking for rb_thread_blocking_region()... yes\nchecking for inotify_init() in sys\/inotify.h... no\nchecking for __NR_inotify_init in sys\/syscall.h... no\nchecking for writev() in sys\/uio.h... no\nchecking for rb_wait_for_single_fd()... yes\nchecking for rb_enable_interrupt()... no\nchecking for rb_time_new()... yes\nchecking for windows.h... yes\nchecking for winsock.h... yes\nchecking for main() in -lkernel32... yes\nchecking for main() in -lrpcrt4... yes\nchecking for main() in -lgdi32... yes\ncreating Makefile\n\nmake \"DESTDIR=\"\ngenerating rubyeventmachine-x64-mingw32.def\ncompiling binder.cpp\nIn file included from c:\\ruby200-x64\\devkit\\mingw\\bin\\..\/lib\/gcc\/x86_64-w64-mingw32\/4.7.2\/..\/..\/..\/..\/x86_64-w64-mingw32\/include\/process.h:12:0,\n                 from c:\/Ruby200-x64\/include\/ruby-2.0.0\/ruby\/win32.h:60,\n                 from c:\/Ruby200-x64\/include\/ruby-2.0.0\/ruby\/defines.h:153,\n                 from c:\/Ruby200-x64\/include\/ruby-2.0.0\/ruby\/ruby.h:70,\n                 from c:\/Ruby200-x64\/include\/ruby-2.0.0\/ruby.h:33,\n                 from em.h:24,\n                 from project.h:150,\n                 from binder.cpp:20:\nc:\\ruby200-x64\\devkit\\mingw\\bin\\..\/lib\/gcc\/x86_64-w64-mingw32\/4.7.2\/..\/..\/..\/..\/x86_64-w64-mingw32\/include\/sys\/types.h:68:16: error: conflicting declaration 'typedef _pid_t pid_t'\nIn file included from binder.cpp:20:0:project.h:97:13: error: 'pid_t' has a previous declaration as 'typedef int pid_t'\nIn file included from project.h:151:0,\n                 from binder.cpp:20:\ned.h: In member function 'void EventableDescriptor::SetSocketInvalid()':\ned.h:43:40: warning: overflow in implicit constant conversion [-Woverflow]\nmake: *** [binder.o] Error 1\n\n\nGem files will remain installed in C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/eventmachine-1.0.3 for inspection.\nResults logged to C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/eventmachine-1.0.3\/ext\/gem_make.out\n<\/code><\/pre>\n<p>OK, following installation process from Eventmachine gem install fail (comment 97 line <code>\/\/typedef int pid_t;<\/code> while installation is starting):<\/p>\n<pre><code>G:\\Distrs\\someapp&gt;gem install eventmachine\nTemporarily enhancing PATH to include DevKit...\nBuilding native extensions.  This could take a while...\nSuccessfully installed eventmachine-1.0.3\nParsing documentation for eventmachine-1.0.3\nunable to convert \"\\x90\" from ASCII-8BIT to UTF-8 for lib\/fastfilereaderext.so,\nskipping\nunable to convert \"\\x90\" from ASCII-8BIT to UTF-8 for lib\/rubyeventmachine.so, s\nkipping\nInstalling ri documentation for eventmachine-1.0.3\n1 gem installed\n<\/code><\/pre>\n<p>Now test it is installed<\/p>\n<pre><code>G:\\Distrs\\someapp&gt;gem list\n\n*** LOCAL GEMS ***\n\naddressable (2.3.5)\nansi (1.4.3)\nbigdecimal (1.2.0)\nbundler (1.3.5)\ndaemons (1.1.9)\ndata_objects (0.10.13)\ndm-core (1.2.1)\ndm-do-adapter (1.2.0)\ndm-migrations (1.2.0)\ndm-sqlite-adapter (1.2.0)\nem-websocket (0.3.8)\nerubis (2.7.0)\neventmachine (1.0.3)\nfaraday (0.8.8)\nio-console (0.4.2)\njsmin (1.0.1)\njson (1.8.1, 1.7.7)\nlibrex (0.0.68)\nminitest (4.3.2)\nmsfrpc-client (1.0.1)\nmsgpack (0.5.6)\nmulti_json (1.8.2)\nmultipart-post (1.2.0)\nparseconfig (1.0.2)\npsych (2.0.0)\nrack (1.5.2)\nrack-protection (1.5.1)\nrake (0.9.6)\nrdoc (4.0.0)\nsimple_oauth (0.2.0)\nsinatra (1.4.2)\nterm-ansicolor (1.2.2)\ntest-unit (2.0.0.0)\nthin (1.6.1)\ntilt (1.4.1)\ntins (0.13.1)\ntwitter (4.8.1)\n<\/code><\/pre>\n<p>Oh no! Not again!<\/p>\n<pre><code>G:\\Distrs\\someapp&gt;ruby someapp\nC:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/thin-1.6.1\/lib\/thin.rb:7:in `require': c\nannot load such file -- eventmachine (LoadError)\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/thin-1.6.1\/lib\/thin.rb:7:in `'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:72:in `require'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:72:in `block (2 levels) in require'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:70:in `each'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:70:in `block in require'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:59:in `each'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler\/runtime.rb:59:in `require'\n        from C:\/Ruby200-x64\/lib\/ruby\/gems\/2.0.0\/gems\/bundler-1.3.5\/lib\/bundler.rb:132:in `require'\n        from G:\/Distrs\/someapp\/core\/loader.rb:10:in `'\n\n        from C:\/Ruby200-x64\/lib\/ruby\/2.0.0\/rubygems\/core_ext\/kernel_require.rb:45:in `require'\n        from C:\/Ruby200-x64\/lib\/ruby\/2.0.0\/rubygems\/core_ext\/kernel_require.rb:45:in `require'\n        from someapp:32:in `'\n<\/code><\/pre>\n<p>Any help please \ud83d\ude41<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve installed Ruby200-x64 via installer and DevKit via self extractor and ruby dk.rb install: C:\\Ruby200-x64\\devkit&gt;ruby dk.rb init Initialization complete! Please review and modify the auto-generated &#8216;config.yml&#8217; file to ensure it contains the root directories to all of the installed Rubies you want enhanced by the DevKit. Then I&#8217;ve added &#8211; C:\\Ruby200-x64 into config.yml C:\\Ruby200-x64\\devkit&gt;type config.yml [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-7365","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts\/7365","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/comments?post=7365"}],"version-history":[{"count":0,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts\/7365\/revisions"}],"wp:attachment":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/media?parent=7365"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/categories?post=7365"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/tags?post=7365"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}