无法在Windows上安装Watir

时间:2011-02-07 06:24:09

标签: ruby rubygems watir

我们正在使用ruby和Watir进行自动化工作,但最近我们开始面临一个新问题。我们无法在新机器上安装Watir。 我们安装了ruby 186_27_rc2,然后更新了宝石。目前的'gem-v'显示已安装1.3.7。 但是,当我们运行'gem install watir'时,我们会收到错误

C:\>gem -v
1.3.7

C:\>gem install watir
Building native extensions. This could take a while…
ERROR: Error installing watir:
ERROR: Failed to build gem native extension.

C:/Ruby/bin/ruby.exe extconf.rb
checking for strncpy_s()… no
creating Makefile

nmake

Microsoft (R) Program Maintenance Utility Version 1.50
Copyright (c) Microsoft Corp 1988-94. All rights reserved.

cl -nologo -I. -I. -IC:/Ruby/lib/ruby/1.8/i386-mswin32 -I. -MD -Zi -O2b2 xg- -G6 -c -Tcwin32/api.c
‘cl’ is not recognized as an internal or external command,
operable program or batch file.
NMAKE : fatal error U1077: ‘C:\WINDOWS\system32\cmd.exe’ : return code ’0×1′
Stop.

Gem files will remain installed in C:/Ruby/lib/ruby/gems/1.8/gems/win32-api-1.4. 8 for inspection.
Results logged to C:/Ruby/lib/ruby/gems/1.8/gems/win32-api-1.4.8/ext/gem_make.out

此致 因德尔

2 个答案:

答案 0 :(得分:3)

这可能是由最新的win32-api gem引起的错误。根据您的错误消息,C扩展源文件api.c(属于win32-api,Watir的依赖项之一)无法编译,因为找不到cl.exe(命令行MS C ++编译器): / p>

  

cl -nologo -I。 -一世。 -IC:/Ruby/lib/ruby/1.8/i386-mswin32 -I。 -MD -Zi -O2b2 xg- -G6 -c -Tcwin32 / api.c

     

'cl'未被识别为内部或外部命令,可操作程序或批处理文件。

正如Iain的回答所指出的,如果你的PATH中有一个cl.exe的副本,这可能会有效,但是你可以不用这样做。

在“gem install watir”之前,尝试安装版本1.4.5的win32-api(包含预构建的二进制文件):

gem install win32-api --version 1.4.5

请参阅此主题以了解2010年初的类似情况:

http://groups.google.com/group/watir-general/browse_thread/thread/9873479c1a430137

答案 1 :(得分:0)