How to debug Middleman 3 gem installation issues on Windows. - ruby

I have installed Middleman 3.1.5 as described on my Windows 8 Machnine along with Ruby using rubyinstaller-2.0.0-p247.exe and followed the steps to get started with success. I am now building my first site with some success (coding some pages, starting the server, building the site) but when I try to use some advanced third party components like middleman-navigation or middleman-deploy I seem to hit a wall. At first I thought of a mistake by myself but as more and more things seem to be buggy I want to figure out what is wrong with my setup or at least confirm nothing is.
Some example output that seems buggy to me:
$ middleman help
WARN: Unresolved specs during Gem::Specification.reset:
rack (>= 1.0, >= 1.4.5)
thor (< 2.0, >= 0.15.2)
activesupport (~> 3.2.6)
listen (~> 1.2.2)
i18n (~> 0.6.1)
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
Tasks:
...
When i try to install middleman-deploy as described, adding gem "middleman-deploy" to my Gemfile and run bundle install there is no indication that anything changed:
$ bundle install
Using i18n (0.6.5)
Using multi_json (1.8.0)
Using activesupport (3.2.14)
Using chunky_png (1.2.8)
Using coffee-script-source (1.6.3)
Using execjs (1.4.0)
Using coffee-script (2.2.0)
Using fssm (0.2.10)
Using sass (3.2.10)
Using compass (0.12.2)
Using eventmachine (1.0.3)
Using http_parser.rb (0.5.3)
Using em-websocket (0.5.0)
Using ffi (1.9.0)
Using tilt (1.3.7)
Using haml (4.0.3)
Using hike (1.2.3)
Using kramdown (1.1.0)
Using rb-fsevent (0.9.3)
Using rb-inotify (0.9.2)
Using rb-kqueue (0.2.0)
Using listen (1.2.3)
Using bundler (1.3.5)
Using rack (1.5.2)
Using rack-test (0.6.2)
Using thor (0.18.1)
Using middleman-core (3.1.5)
Using middleman-more (3.1.5)
Using sprockets (2.10.0)
Using sprockets-helpers (1.0.1)
Using sprockets-sass (1.0.1)
Using middleman-sprockets (3.1.4)
Using uglifier (2.1.2)
Using middleman (3.1.5)
Using rack-livereload (0.3.15)
Using middleman-livereload (3.1.0)
Using wdm (0.1.0)
Your bundle is complete!
Use `bundle show [gemname]` to see where a bundled gem is installed.
I then add a configuration to config.rb and try to use the gem without success:
$ middleman deploy
WARN: Unresolved specs during Gem::Specification.reset:
rack (>= 1.0, >= 1.4.5)
thor (< 2.0, >= 0.15.2)
multi_json (~> 1.0)
rb-inotify (>= 0.9)
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
There's no 'deploy' command for Middleman. Try 'middleman help' for a list of commands.
Please help me to narrow down the cause of these issues.

I had a similar WARN: Unresolved specs during Gem::Specification.reset: message when I did middleman build I'm on a Mac using rvm with ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin12.3.0]. I found an issue post on GitHub with a similar WARN and the fix was to run gem regenerate_binstubs. It cleared the WARN for me. I'm not sure exactly what that does but it clears up a few issues with rubygems-bundler.

Related

bundle install fails with rdoc Internal Server Error

while trying to install a Ruby application with Bundler, the dependent rdoc gem fails with an Internal Server Error:
user#machine:/home/user/someapp# bundle
Fetching gem metadata from http://rubygems.org/...........
Fetching gem metadata from http://rubygems.org/..
Using rake (10.0.3)
Using i18n (0.6.1)
Using multi_json (1.6.1)
Using activesupport (3.2.12)
Using builder (3.0.4)
Using activemodel (3.2.12)
Using erubis (2.7.0)
Using journey (1.0.4)
Using rack (1.4.5)
Using rack-cache (1.2)
Using rack-test (0.6.2)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.2.2)
Using actionpack (3.2.12)
Using mime-types (1.21)
Using polyglot (0.3.3)
Using treetop (1.4.12)
Using mail (2.4.4)
Using actionmailer (3.2.12)
Using arel (3.0.2)
Using tzinfo (0.3.35)
Using activerecord (3.2.12)
Using activeresource (3.2.12)
Using addressable (2.3.3)
Using bcrypt-ruby (3.0.1)
Using coderay (1.0.9)
Using better_errors (0.7.0)
Using debug_inspector (0.0.2)
Using binding_of_caller (0.7.1)
Using cancan (1.6.9)
Using nokogiri (1.5.6)
Using ffi (1.4.0)
Using childprocess (0.3.8)
Using rubyzip (0.9.9)
Using websocket (1.0.7)
Using selenium-webdriver (2.30.0)
Using xpath (1.0.0)
Using capybara (2.0.2)
Using coffee-script-source (1.4.0)
Using execjs (1.4.0)
Using coffee-script (2.2.0)
Using rack-ssl (1.3.3)
Using json (1.7.7)
Gem::RemoteFetcher::FetchError: bad response Internal Server Error 500 (http://aws-eu-cache01.rubygems.org/gems/rdoc-3.12.1.gem)
An error occured while installing rdoc (3.12.1), and Bundler cannot continue.
Make sure that `gem install rdoc -v '3.12.1'` succeeds before bundling.
What I have tried:
gem install rdoc -v '3.12.1': ERROR: While executing gem ... Gem::RemoteFetcher::FetchError) bad response Internal Server Error 500 (http://aws-eu-cache01.rubygems.org/gems/rdoc-3.12.1.gem)
adding gem: --no-document to the /etc/gemrc file
adding gem: --no-rdoc --no-ri to the /etc/gemrc file
How can I get rdoc to install, or how do I get the application to install without rdoc?
Try reinstalling rdoc. Maybe there was a problem with the rubygems server when you last tried.

"Rake/rdoc task is obsolete" message ... and none of the fixes online here are working

I am a Rails & Ruby noob and was going through the Agile Web Development with Rails book. I did a routine rake command and got this familiar message:
ERROR: 'rake/rdoctask' is obsolete and no longer supported. Use 'rdoc/task' (ava
ilable in RDoc 2.4.2+) instead.
c:/rails_projects/depot/Rakefile:8:in `'
I searched Google thoroughly, tried editing my Gemfile a couple of times as suggested in other threads, updated rdoc gem, and still I get this error. I am running Rails 3.0.5, Ruby 1.9.3p392, rdoc 4.0.2. This is my bundle install:
Using rake (10.0.4)
Using abstract (1.0.0)
Using activesupport (3.0.5)
Using builder (2.1.2)
Using i18n (0.6.4)
Using activemodel (3.0.5)
Using erubis (2.6.6)
Using rack (1.2.8)
Using rack-mount (0.6.14)
Using rack-test (0.5.7)
Using tzinfo (0.3.37)
Using actionpack (3.0.5)
Using mime-types (1.22)
Using polyglot (0.3.3)
Using treetop (1.4.12)
Using mail (2.2.19)
Using actionmailer (3.0.5)
Using arel (2.0.10)
Using activerecord (3.0.5)
Using activeresource (3.0.5)
Using json (1.7.7)
Using bundler (1.3.4)
Using thor (0.14.6)
Using railties (3.0.5)
Using rails (3.0.5)
Using rdoc (4.0.1)
Using sqlite3 (1.3.7)
And my Gemfile:
gem 'rails', '3.0.5'
gem 'sqlite3'
gem 'rdoc', ">= 4.0.1"
require 'rdoc/task'
I put that gem rdoc thing in based on one forum I found.
The bad require 'rake/rdoctask' call is happening in Rails itself. The simplest solution is probably to update Rails. You should be able to work through that book just fine using Rails 3.0.20.

Failed to build gem native extension ruby 2.0 upgrade fastthread

I am upgrading my system to ruby 2.0 and I have done everything short of throw my computer on the wall. I find it hard to believe that fastthread is the problem. Has anyone else seen this error when running 'bundle install'. Here is my ruby version
ruby -v
ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin12.2.0]
when I try to run rails -v I get this
rails -v
Could not find fastthread-1.0.7 in any of the sources
Run bundle install to install missing gems.
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/..
Resolving dependencies...
Using rake (10.0.3)
Using i18n (0.6.1)
Using multi_json (1.6.1)
Using activesupport (3.2.9)
Using builder (3.0.4)
Using activemodel (3.2.9)
Using erubis (2.7.0)
Using journey (1.0.4)
Using rack (1.4.5)
Using rack-cache (1.2)
Using rack-test (0.6.2)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.2.2)
Using actionpack (3.2.9)
Using mime-types (1.21)
Using polyglot (0.3.3)
Using treetop (1.4.12)
Using mail (2.4.4)
Using actionmailer (3.2.9)
Using arel (3.0.2)
Using tzinfo (0.3.35)
Using activerecord (3.2.9)
Using activeresource (3.2.9)
Using bundler (1.3.0)
Using highline (1.6.15)
Using net-ssh (2.6.5)
Using net-scp (1.1.0)
Using net-sftp (2.1.1)
Using net-ssh-gateway (1.2.0)
Using capistrano (2.14.2)
Using chunky_png (1.2.7)
Using coffee-script-source (1.5.0)
Using execjs (1.4.0)
Using coffee-script (2.2.0)
Using rack-ssl (1.3.3)
Using json (1.7.7)
Using rdoc (3.12.2)
Using thor (0.17.0)
Using railties (3.2.9)
Using coffee-rails (3.2.2)
Using fssm (0.2.10)
Using sass (3.2.6)
Using compass (0.12.2)
Using compass-rails (1.0.3)
Using daemon_controller (1.1.1)
Installing fastthread (1.0.7)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/ben/.rvm/rubies/ruby-2.0.0-p0/bin/ruby extconf.rb
extconf.rb:13:in `block in <main>': Use RbConfig instead of obsolete and deprecated Config.
extconf.rb:13:in `block in <main>': Use RbConfig instead of obsolete and deprecated Config.
make
Makefile:104: *** missing separator. Stop.
Gem files will remain installed in /Users/[me]/.rvm/gems/ruby-2.0.0-p0/gems/fastthread-1.0.7 for inspection.
Results logged to /Users/[me]/.rvm/gems/ruby-2.0.0-p0/gems/fastthread-1.0.7/ext/fastthread/gem_make.out
An error occurred while installing fastthread (1.0.7), and Bundler cannot
continue.
Make sure that `gem install fastthread -v '1.0.7'` succeeds before bundling.
Has anyone else ran into this?
Conents of /Users/[me]/.rvm/gems/ruby-2.0.0-p0/gems/fastthread-1.0.7/ext/fastthread/gem_mak‌​e.out
/Users/[me]/.rvm/rubies/ruby-2.0.0-p0/bin/ruby extconf.rb
extconf.rb:13:in `block in <main>': Use RbConfig instead of obsolete and deprecated Config.
extconf.rb:13:in `block in <main>': Use RbConfig instead of obsolete and deprecated Config.
make
Makefile:104: *** missing separator. Stop.
Phusion Passenger 4 has already solved this by removing the fastthread dependency. The 4.0 betas and RCs install just fine on Ruby 2.0.
If you use Passenger as your webserver you have to have this dependency. See this pull request for the fix: https://github.com/zoltankiss/fastthread/commit/a47a121990cf7d4f31147406c2d379dabc048479
The author of the gem has not yet included this fix. You can require fastthread from https://github.com/zoltankiss/fastthread if you need it. That is who submitted the pull request.

I can´t install rcov, makefile warning 124 and 130

I can´t install the rcov gem ;-(
I use BitNami Redmine, Windows 7.
gem install rcov
Result:
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
ERROR: Error installing rcov:
ERROR: Failed to build gem native extension.
"C:/Program Files/BitNami Redmine Stack/ruby/bin/ruby.exe" extconf.rb
creating Makefile
make
Makefile:130: warning: overriding commands for target `C:/Program'
Makefile:124: warning: ignoring old commands for target `C:/Program'
Makefile:130: warning: overriding commands for target `Files/BitNami'
Makefile:124: warning: ignoring old commands for target `Files/BitNami'
Makefile:130: warning: overriding commands for target `Redmine'
Makefile:124: warning: ignoring old commands for target `Redmine'
make: *** No rule to make target `ruby.h', needed by `callsite.o'. Stop.
Gem files will remain installed in C:/Program Files/BitNami Redmine Stack/ruby/l
ib/ruby/gems/1.8/gems/rcov-1.0.0 for inspection.
Results logged to C:/Program Files/BitNami Redmine Stack/ruby/lib/ruby/gems/1.8/
gems/rcov-1.0.0/ext/rcovrt/gem_make.out
Before this message BitNami told me to install the DevKit. I installed the DevKit, did edit the confiy.yml (- C:/Program Files/BitNami Redmine Stack/ruby -- maybe this was my fault because I don´t wrote the "") and startet the DevKit installation. Everything was fine but it´s not possible to install the gem. In my opinion it was a very bad idea to install Redmine into a folder with spaces.
I searched for a solution but none solution did work ;-(
Solution 1: I substed the BitNami path to X, tried the installation but that didn´t work.
Solution 2: Use the Microsoft C++ Express advice (http://minimalbugs.com/questions/how-to-install-gem-rcov-on-windows)
Solution 3: An older version of rcov (like 0.9.11) also didn´t work
If I try to install the rdiscount gem I got a similar error (Makefile 130 / 124 / ... C:/Program/...).
Now I need help ;-)
My gems:
*** LOCAL GEMS ***
actionmailer (3.2.6, 2.3.14)
actionpack (3.2.6, 2.3.14)
activemodel (3.2.6)
activerecord (3.2.6, 2.3.14)
activeresource (3.2.6, 2.3.14)
activesupport (3.2.6, 2.3.14)
addressable (2.2.8)
after_commit (1.0.10)
allison (2.0.3)
arel (3.0.2)
aws-sdk (1.5.5, 1.5.2)
bcrypt-ruby (3.0.1 x86-mingw32)
bluecloth (2.1.0 x86-mingw32)
builder (3.0.0, 2.1.2)
bundler (1.1.4, 1.0.21)
capistrano (2.12.0, 2.9.0)
capybara (1.1.2)
cgi_multipart_eof_fix (2.5.0)
childprocess (0.3.3)
coderay (1.0.7, 1.0.6)
crack (0.3.1)
cucumber (1.2.1, 0.9.4)
cucumber-rails (1.3.0, 0.3.2)
daemons (1.1.8, 1.0.10)
delayed_job (3.0.3, 2.0.7)
diff-lcs (1.1.3, 1.1.2)
echoe (4.5.6)
edavis10-object_daddy (0.4.3)
erubis (2.7.0)
eventmachine (0.12.10)
fastercsv (1.5.5, 1.5.4)
ffi (1.0.9 x86-mingw32)
gem_plugin (0.2.3)
gemcutter (0.7.1)
gherkin (2.11.1 x86-mingw32, 2.2.9 x86-mingw32)
gruff (0.3.6)
highline (1.6.13, 1.6.8)
hike (1.2.1)
hoe (3.0.6, 2.12.4)
hpricot (0.8.5 i386-mswin32)
httparty (0.8.3, 0.8.1)
i18n (0.6.0, 0.4.2)
journey (1.0.4, 1.0.3)
json (1.4.6 x86-mingw32)
json_pure (1.7.3, 1.6.3)
libwebsocket (0.1.3)
mail (2.4.4)
memcache-client (1.8.5)
metaclass (0.0.1)
mime-types (1.19, 1.18)
mini_magick (3.4, 3.3)
mocha (0.11.4, 0.10.5)
mongrel (1.1.5 x86-mingw32)
mongrel_cluster (1.0.5)
mongrel_service (0.4.0)
multi_json (1.3.6, 1.1.0)
multi_xml (0.5.1, 0.4.1)
mysql (2.8.1 x86-mingw32)
needle (1.3.0)
net-ldap (0.3.1)
net-scp (1.0.4)
net-sftp (2.0.5)
net-ssh (2.5.2, 2.2.1)
net-ssh-gateway (1.1.0)
nokogiri (1.5.5 x86-mingw32, 1.5.0 x86-mingw32, 1.4.4 x86-mingw32)
polyglot (0.3.3)
prototype-rails (3.2.1)
rack (1.4.1, 1.1.3)
rack-cache (1.2)
rack-openid (1.3.1)
rack-ssl (1.3.2)
rack-test (0.6.1, 0.5.7)
rails (3.2.6, 2.3.14)
rails_analyzer_tools (1.4.0)
railties (3.2.6)
rake (0.9.2.2)
rake-compiler (0.8.1, 0.7.9)
rdoc (3.12, 3.11)
RedCloth (4.2.9 x86-mingw32)
riddle (1.5.2, 1.5.0)
rmagick (2.12.0)
rspec (2.10.0, 2.7.0)
rspec-core (2.10.1, 2.7.1)
rspec-expectations (2.10.0, 2.7.0)
rspec-mocks (2.10.1, 2.7.0)
ruby-openid (2.1.8)
rubyforge (2.0.4)
rubyzip (0.9.9)
selenium-webdriver (2.24.0)
simplecov (0.6.4)
simplecov-html (0.5.3)
sprockets (2.4.3, 2.1.3, 2.1.2)
sqlite3 (1.3.6 x86-mingw32, 1.3.5 x86-mingw32)
sqlite3-ruby (1.3.2 x86-mingw32)
subexec (0.2.2, 0.1.0)
SyslogLogger (1.4.1, 1.4.0)
term-ansicolor (1.0.7)
thin (1.3.1)
thinking-sphinx (2.0.12, 1.4.10)
thor (0.15.3, 0.14.6)
tilt (1.3.3)
treetop (1.4.10, 1.4.5)
tzinfo (0.3.33)
uuidtools (2.1.2)
webrat (0.7.3)
xpath (0.1.4)
yard (0.8.2.1, 0.8.1)
I had the same error. Everything solved it self by changing the installation location of the Bitnami Redmine Stack. Default location is C:\Program Files\Bitnami Redmine Stack\
The "make" which is included in the DevKit can't handle spaces in the pathname.
I installed the bitnami stack to C:\BitNamiRedmine\ and now everything works perfectly.
Install Bitname Redmine to a path without spaces, e.g. C:\BitNamiRedmine\
Download the Ruby Development Kit -> http://rubyinstaller.org/downloads/
Extract the DevKit to C:\BitNamiRedmine\ruby\devkit\
use_redmine.bat
cd ruby\devkit
run ruby dk.rb init
add »- "C:/BitNamiRedmine/ruby"« (without »«, Important: Forward-Slashes!) to the config.yml in the DevKit folder
run ruby dk.rb install
Done!
Now you can navigate to your apps/redmine/htdocs folder and run gem install rcov.
Tested on Windows Server 2008 R2.

Failed DataMapper Gem install on Win7

I'm learning to use Sinatra + Datamapper to build a lightweight webapp.
I ran gem install sqlite3 datamapper dm-sqlite-adapter and it seemed to have successfully installed...
I then tried to execute my .rb file which starts with:
require 'sinatra'
require 'datamapper'
and I got an error that it could not find the datamapper file.
C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': no such file to load -- datamapper (LoadError)
I also tried with require 'data_mapper' since there is conflicting information on the internetz as to the correct spelling of that gem, but same result.
I then listed all my installed gems (see below) and realilsed that there is no such gem as datamapper or data_mapper. I read so,ewhere that it is a meta-gem, I guess that means it doesn't actually install that one gem but rather all the gems starting with dm- ?
As a last resort I tried gem install data_mapper
and I got the ill fated:
C:\Users\Manu\Sinatra>gem install data_mapper
Building native extensions. This could take a while...
ERROR: Error installing data_mapper:
ERROR: Failed to build gem native extension.
C:/Ruby192/bin/ruby.exe extconf.rb
creating Makefile
make
'make' is not recognized as an internal or external command,operable program or batch file.
Gem files will remain installed in C:/Ruby192/lib/ruby/gems/1.9.1/gems/json-1.6.4 for inspection.
Results logged to C:/Ruby192/lib/ruby/gems/1.9.1/gems/json-1.6.4/ext/json/ext/parser/gem_make.out
I searched all over and just couldn't find anything to help me troubleshoot this, so hopefully there's someone roaming this forum with a magic wand and a pointy hat!
Many thanks
PS: I'm running ruby 1.9.2p0 installed with the installer
* LOCAL GEMS *
abstract (1.0.0)
actionmailer (3.0.3)
actionpack (3.0.3)
activemodel (3.0.3)
activerecord (3.0.3)
activeresource (3.0.3)
activesupport (3.0.3)
addressable (2.2.6)
arel (2.0.6)
backports (2.3.0)
builder (2.1.2)
bundler (1.0.7)
cgi_multipart_eof_fix (2.5.0)
data_objects (0.10.7)
diff-lcs (1.1.3)
dm-aggregates (1.2.0)
dm-constraints (1.2.0)
dm-core (1.2.0)
dm-do-adapter (1.2.0)
dm-migrations (1.2.0)
dm-sqlite-adapter (1.2.0)
dm-transactions (1.2.0)
do_sqlite3 (0.10.7 x86-mingw32)
erubis (2.6.6)
fastercsv (1.5.4)
gem_plugin (0.2.3)
growl (1.0.3)
i18n (0.5.0)
json_pure (1.6.4)
mail (2.2.12)
mime-types (1.16)
minitest (1.6.0)
mongrel (1.1.5 x86-mingw32)
multi_json (1.0.4)
polyglot (0.3.1)
rack (1.4.0, 1.2.1)
rack-mount (0.6.13)
rack-protection (1.2.0)
rack-test (0.5.6)
rails (3.0.3)
railties (3.0.3)
rake (0.8.7)
rdoc (2.5.8)
rspec (2.8.0)
rspec-core (2.8.0)
rspec-expectations (2.8.0)
rspec-mocks (2.8.0)
rubygems-update (1.8.15)
sinatra (1.3.2)
sqlite3 (1.3.5 x86-mingw32)
sqlite3-ruby (1.3.3, 1.3.2 x86-mingw32)
sys-uname (0.9.0 x86-mingw32)
thor (0.14.6)
tilt (1.3.3)
treetop (1.4.9)
trollop (1.16.2)
tzinfo (0.3.23)
yard (0.7.4)
It seems the RubyInstaller Development Kit is missing:
http://rubyinstaller.org/add-ons/devkit/
The devkit installs a C-compiler (and some other stuff like make) to compile C-written parts.
Install it and try again to install the gem - perhaps with option --platform=ruby.
Details can be found at https://github.com/oneclick/rubyinstaller/wiki/Development-Kit

Resources