carlhuda/bundler — Issue #1593: Watir - Install Fails - Windows 7 X64 and XP X86
Author: andysheldon
Created: 2011-12-17 23:03:29+00:00
State: open

Hi,

I am currently trying to install watir on my PC but currently hitting the errors below and I cannot think why this is happening?

I am following the steps below to install:

Download ruby 1.9.2:
http://www.ruby-lang.org/en/downloads/
Install.

Download RubyGems:
http://rubygems.org/pages/download
Install.

Download the DevKit so that native extensions can be built:
ruby dk.rb init
ruby dk.rb review
ruby dk.rb install

gem update --system (or to do more quickly: gem update --system --no-rdoc --no-ri)
gem install watir

Whaend I do this all I get is the error log below. Does anyone know how I can get Watir to install please? ANY HELP GREATFULLY RECEIVED!!!!

C:\Documents and Settings\IE User\Desktop\Ruby and Eclipse>gem install watir
Fetching: win32-api-1.4.8-x86-mingw32.gem (100%)
Fetching: windows-api-0.4.0.gem (100%)
Fetching: windows-pr-1.2.1.gem (100%)
Fetching: win32-process-0.6.5.gem (100%)
Fetching: xml-simple-1.1.1.gem (100%)
Fetching: hoe-2.12.4.gem (100%)
Fetching: s4t-utils-1.0.4.gem (100%)
WARNING: s4t-utils-1.0.4 has an invalid nil value for @cert_chain
Fetching: builder-3.0.0.gem (100%)
Fetching: user-choices-1.1.6.1.gem (100%)
Fetching: commonwatir-2.0.4.gem (100%)
Fetching: nokogiri-1.5.0-x86-mingw32.gem (100%)
Fetching: ffi-1.0.11.gem (100%)
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
ERROR: Error installing watir:
ERROR: Failed to build gem native extension.

C:/Ruby192/bin/ruby.exe extconf.rb
checking for ffi.h... no
checking for ffi.h in /usr/local/include... no
checking for rb_thread_blocking_region()... yes
checking for ruby_thread_has_gvl_p()... yes
checking for ruby_native_thread_p()... yes
checking for rb_thread_call_with_gvl()... yes
creating extconf.h
creating Makefile

make
C:/Ruby192/bin/ruby -e "puts 'EXPORTS', 'Init_ffi_c'" > ffi_c-i386-mingw32.def
Configuring libffi
make -C "/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/ffi_c/libffi"
make[1]: Entering directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/
ffi_c/libffi'
make "AR_FLAGS=" "CC_FOR_BUILD=" "CFLAGS=" "CXXFLAGS=" "CFLAGS_FOR_BUILD=" "CFLA
GS_FOR_TARGET=" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c
-m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -
c" "JC1FLAGS=" "LDFLAGS=" "LIBCFLAGS=" "LIBCFLAGS_FOR_TARGET=" "MAKE=make" "MAKE
INFO=/bin/sh /c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/ffi_c/libffi/mis
sing --run makeinfo " "PICFLAG=" "PICFLAG_FOR_TARGET=" "RUNTESTFLAGS=" "SHELL=/b
in/sh" "exec_prefix=/usr/local" "infodir=/usr/local/share/info" "libdir=/usr/loc
al/lib" "prefix=/usr/local" "AR=ar" "AS=as" "CC=gcc" "CXX=g++" "LD=c:/documents
and settings/ie user/desktop/ruby and eclipse/mingw/mingw32/bin/ld.exe" "NM=/usr
/mingw/bin/nm" "RANLIB=ranlib" "DESTDIR=" all-recursive
make[2]: Entering directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/
ffi_c/libffi'
Making all in include
make[3]: Entering directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/
ffi_c/libffi/include'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/f
fi_c/libffi/include'
Making all in testsuite
make[3]: Entering directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/
ffi_c/libffi/testsuite'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/f
fi_c/libffi/testsuite'
Making all in man
make[3]: Entering directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/
ffi_c/libffi/man'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/f
fi_c/libffi/man'
make[3]: Entering directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/
ffi_c/libffi'
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I./inc
lude -Iinclude -I./src -Wall -g -fexceptions -c -o src/debug.lo src/debug.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -Wa
ll -g -fexceptions -c src/debug.c -DDLL_EXPORT -DPIC -o src/.libs/debug.o
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I./inc
lude -Iinclude -I./src -Wall -g -fexceptions -c -o src/prep_cif.lo src/prep_ci
f.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -Wa
ll -g -fexceptions -c src/prep_cif.c -DDLL_EXPORT -DPIC -o src/.libs/prep_cif.o

/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I./inc
lude -Iinclude -I./src -Wall -g -fexceptions -c -o src/types.lo src/types.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -Wa
ll -g -fexceptions -c src/types.c -DDLL_EXPORT -DPIC -o src/.libs/types.o
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I./inc
lude -Iinclude -I./src -Wall -g -fexceptions -c -o src/raw_api.lo src/raw_api.
c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -Wa
ll -g -fexceptions -c src/raw_api.c -DDLL_EXPORT -DPIC -o src/.libs/raw_api.o
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I./inc
lude -Iinclude -I./src -Wall -g -fexceptions -c -o src/java_raw_api.lo src/jav
a_raw_api.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -Wa
ll -g -fexceptions -c src/java_raw_api.c -DDLL_EXPORT -DPIC -o src/.libs/java_r
aw_api.o
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I./inc
lude -Iinclude -I./src -Wall -g -fexceptions -c -o src/closures.lo src/closure
s.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -Wa
ll -g -fexceptions -c src/closures.c -DDLL_EXPORT -DPIC -o src/.libs/closures.o

/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I./inc
lude -Iinclude -I./src -Wall -g -fexceptions -c -o src/x86/ffi.lo src/x86/ffi.
c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -Wa
ll -g -fexceptions -c src/x86/ffi.c -DDLL_EXPORT -DPIC -o src/x86/.libs/ffi.o
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iin
clude -I./src -I. -I./include -Iinclude -I./src -c -o src/x86/win32.lo src/x86
/win32.S
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -I.
-I./include -Iinclude -I./src -c src/x86/win32.S -DDLL_EXPORT -DPIC -o src/x86
/.libs/win32.o
/bin/sh ./libtool --tag=CC --mode=link gcc -Wall -g -fexceptions -version-inf
o `grep -v '^#' ./libtool-version` -no-undefined -o libffi.la -rpath /usr/local
/lib src/debug.lo src/prep_cif.lo src/types.lo src/raw_api.lo src/java_raw_api.l
o src/closures.lo src/x86/ffi.lo src/x86/win32.lo
libtool: link: gcc -o .libs/libffi.dll.a src/.libs/debug.o src/.libs/prep_cif.o
src/.libs/types.o src/.libs/raw_api.o src/.libs/java_raw_api.o src/.libs/closur
es.o src/x86/.libs/ffi.o src/x86/.libs/win32.o `echo "X" | /usr/bin/sed -e 1
s/^X// -e 's/ -lc$//'` -link -dll
c:/documents and settings/ie user/desktop/ruby and eclipse/mingw/bin/../lib/gcc/
mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot find -link
collect2: ld returned 1 exit status
make[3]: *** [libffi.la] Error 1
make[3]: Leaving directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/f
fi_c/libffi'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/f
fi_c/libffi'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/f
fi_c/libffi'
make: *** ["/c/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/ffi_c/libffi"/.li
bs/libffi_convenience.a] Error 2

Gem files will remain installed in C:/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.1
1 for inspection.
Results logged to C:/Ruby192/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/ext/ffi_c/gem_m
ake.out

I am totally at a loss as to how to rectify this. I have tried this on both XP x86 and Win 7 X64 to no avail.

Thanks in advance
Andy