尝试通过 cygwin 在 Windows 7 上安装 watir 或 watir-webdriver gem 时,出现较长的 C 堆栈跟踪,其中提到“W32 套接字”问题

尝试通过 cygwin 在 Windows 7 上安装 watir 或 watir-webdriver gem 时,出现较长的 C 堆栈跟踪,其中提到“W32 套接字”问题

运行时:

$ gem install watir

在 Windows 7 (cygwin) 上,我得到了这个

ERROR:  Error installing watir:
ERROR: Failed to build gem native extension.

/usr/bin/ruby.exe extconf.rb
checking for ffi.h... no
checking for ffi.h in /usr/local/include,/usr/include/ffi... no
checking for rb_thread_blocking_region()... yes
checking for rb_thread_call_with_gvl()... yes
checking for rb_thread_call_without_gvl()... yes
checking for ffi_prep_cif_var()... no
creating extconf.h
creating Makefile

make
Configuring libffi
make -C "/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin"
make[1]: Entering directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin'
make "AR_FLAGS="  "CC_FOR_BUILD="  "CFLAGS=-Wall -fexceptions"  "CXXFLAGS="  "CFLAGS_FOR_BUILD="  "CFLAGS_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"  "MAKEINFO=/bin/sh /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/missing --run makeinfo "  "PICFLAG="  "PICFLAG_FOR_TARGET="  "RUNTESTFLAGS="  "SHELL=/bin/sh"  "exec_prefix=/usr/local"  "infodir=/usr/local/share/info"  "libdir=/usr/local/lib"  "mandir=/usr/local/share/man"  "prefix=/usr/local"  "AR=ar"  "AS=as"  "CC=gcc"  "CXX=g++"  "LD=/usr/i686-pc-cygwin/bin/ld.exe"  "NM=/usr/bin/nm -B"  "RANLIB=ranlib"  "DESTDIR=" all-recursive
make[2]: Entering directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin'
Making all in include
make[3]: Entering directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin/include'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin/include'
Making all in testsuite
make[3]: Entering directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin/testsuite'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin/testsuite'
Making all in man
make[3]: Entering directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin/man'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin/man'
make[3]: Entering directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin'
restore=: && backupdir=".am$$" && \
am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi && \
rm -rf $backupdir && mkdir $backupdir && \
if (/bin/sh /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/missing --run makeinfo   --version) >/dev/null 2>&1; then \
  for f in /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc/libffi.info /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc/libffi.info-[0-9] /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc/libffi.info-[0-9][0-9] /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc/libffi.i[0-9] /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc/libffi.i[0-9][0-9]; do \
    if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
  done; \
else :; fi && \
cd "$am__cwd"; \
if /bin/sh /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/missing --run makeinfo     -I doc -I /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc \
 -o /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc/libffi.info /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc/libffi.texi; \
then \
  rc=0; \
  CDPATH="${ZSH_VERSION+.}:" && cd /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi; \
else \
  rc=$?; \
  CDPATH="${ZSH_VERSION+.}:" && cd /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi && \
  $restore $backupdir/* `echo ".//usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/doc/libffi.info" | sed 's|[^/]*$||'`; \
fi; \
rm -rf $backupdir; exit $rc
/bin/sh ./libtool --tag=CC    --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi   -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/debug.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/debug.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/debug.c  -DDLL_EXPORT -DPIC -o src/.libs/debug.o
/bin/sh ./libtool --tag=CC    --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi   -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/prep_cif.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/prep_cif.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/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/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi   -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/types.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/types.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/types.c  -DDLL_EXPORT -DPIC -o src/.libs/types.o
/bin/sh ./libtool --tag=CC    --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi   -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/raw_api.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/raw_api.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/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/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi   -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/java_raw_api.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/java_raw_api.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/java_raw_api.c  -DDLL_EXPORT -DPIC -o src/.libs/java_raw_api.o
/bin/sh ./libtool --tag=CC    --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi   -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/closures.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/closures.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/closures.c  -DDLL_EXPORT -DPIC -o src/.libs/closures.o
/bin/sh ./libtool --tag=CC    --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi   -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -g  -Wall -fexceptions -c -o src/x86/ffi.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/x86/ffi.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -g -Wall -fexceptions -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/x86/ffi.c  -DDLL_EXPORT -DPIC -o src/x86/.libs/ffi.o
/bin/sh ./libtool    --mode=compile gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi   -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src  -c -o src/x86/win32.lo /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/x86/win32.S
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -I. -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/include -Iinclude -I/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src -c /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/src/x86/win32.S  -DDLL_EXPORT -DPIC -o src/x86/.libs/win32.o
/bin/sh ./libtool --tag=CC    --mode=link gcc -g  -Wall -fexceptions  -version-info `grep -v '^#' /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi/libtool-version`  -no-undefined -bindir "/usr/local/bin"  -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.lo src/closures.lo      src/x86/ffi.lo src/x86/win32.lo
libtool: link: gcc -shared  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/closures.o src/x86/.libs/ffi.o src/x86/.libs/win32.o      -o .libs/cygffi-5.dll -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker .libs/libffi.dll.a
libtool: link: ( cd ".libs" && rm -f "libffi.la" && ln -s "../libffi.la" "libffi.la" )
/bin/sh ./libtool --tag=CC    --mode=link gcc -g  -Wall -fexceptions    -o libffi_convenience.la  src/debug.lo src/prep_cif.lo src/types.lo  src/raw_api.lo src/java_raw_api.lo src/closures.lo      src/x86/ffi.lo src/x86/win32.lo
libtool: link: rm -fr  .libs/libffi_convenience.a(D)
libtool: link: ar cru .libs/libffi_convenience.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/closures.o src/x86/.libs/ffi.o src/x86/.libs/win32.o
libtool: link: ranlib .libs/libffi_convenience.a
libtool: link: ( cd ".libs" && rm -f "libffi_convenience.la" && ln -s "../libffi_convenience.la" "libffi_convenience.la" )
make[3]: Leaving directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin'
make[2]: Leaving directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin'
make[1]: Leaving directory `/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin'
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing -mwin32   -o AbstractMemory.o -c AbstractMemory.c
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing -mwin32   -o ArrayType.o -c ArrayType.c
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing -mwin32   -o Buffer.o -c Buffer.c
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing -mwin32   -o Call.o -c Call.c
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -I"/usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/libffi-i386-cygwin"/include -DRUBY_EXTCONF_H=\"extconf.h\"    -ggdb -O2 -pipe   -fno-strict-aliasing -mwin32   -o ClosurePool.o -c ClosurePool.c
In file included from /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api/winsock2.h:56,
                 from ClosurePool.c:38:
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api/psdk_inc/_fd_types.h:100:2: warning: #warning "fd_set and associated macros have been defined in sys/types.      This can cause runtime problems with W32 sockets"
In file included from /usr/include/cygwin/sys_time.h:13,
                 from /usr/include/sys/time.h:61,
                 from /usr/include/ruby-1.9.1/ruby/missing.h:28,
                 from /usr/include/ruby-1.9.1/ruby/ruby.h:1381,
                 from /usr/include/ruby-1.9.1/ruby.h:32,
                 from ClosurePool.c:43:
/usr/include/sys/select.h:31: error: conflicting types for 'select'
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api/winsock2.h:986: error: previous declaration of 'select' was here
/usr/include/sys/select.h:31: error: conflicting types for 'select'
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api/winsock2.h:986: error: previous declaration of 'select' was here
Makefile:204: recipe for target `ClosurePool.o' failed
make: *** [ClosurePool.o] Error 1


Gem files will remain installed in /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.9.1/gems/ffi-1.8.1/ext/ffi_c/gem_make.out

我希望这只是一个我尚未安装的开发包。感谢您尝试一下。

Stack Overflow 要求我多写一点代码,因为上面有太多代码。但事实是,我已经对此感到力不从心了,因为我通常是一名只使用 Unix 的开发人员。我必须使用 Windows 来实现这一点,因为我正在使用的 Web 应用程序只能在 Internet Explorer 上运行,而不能在 Windows 8 上运行。

仅供参考我在 64 位硬件上运行 64 位软件。

答案1

我写了有关如何在 Windows 上安装 Watir 的说明:https://github.com/watir/watirbook/blob/master/installation/windows.md

虽然它还没有完全更新,但是应该可以工作。

答案2

我看到你正在尝试使用 cygwin gcc 构建它,根据我的经验,成功的可能性不大。你应该尝试使用 ruby​​installer.org 上的 ruby​​ + devkit,我之前已经通过这种方式成功安装了适用于 Win7x64 的 watir。

相关内容