Howdy,
I've developed an internal test tool for our product that requires
ruby with native gems. Currently trying to port to Windows 2000
Server sp4 running on a VM (easy to revert, try again).
New installation of w2k-srv.
Installed gvim-7.3
Installed ruby-1.9.2-p136-i386-mswin32 to C:\\ruby192 with extra libs
(zlib, openssl, readline, pdcurses) under C:\\ruby192 (bin, doc,
include, lib sub-directories).
Installed DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe to C:\\DevKit
Ran ruby dk.rb init
Manually appended "- C:/ruby192" to config.yml
Ran ruby dk.rb install
C:\>ruby --version
ruby 1.9.2p136 (2010-12-25 revision 30365) [i386-mswin32]
C:\>gem list
*** LOCAL GEMS ***
minitest (1.6.0)
rake (0.8.7)
rdoc (2.5.8)
C:\>mkdir test
C:\>cd test
C:\test>gem install rdiscount --platform=ruby
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
ERROR: Error installing rdiscount:
ERROR: Failed to build gem native extension.
c:/ruby192/bin/ruby.exe extconf.rb
checking for random()... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--srcdir=.
--curdir
--ruby=c:/ruby192/bin/ruby
--with-rdiscount-dir
--without-rdiscount-dir
--with-rdiscount-include
--without-rdiscount-include=${rdiscount-dir}/include
--with-rdiscount-lib
--without-rdiscount-lib=${rdiscount-dir}/lib
c:/ruby192/lib/ruby/1.9.1/mkmf.rb:368:in `try_do': The complier failed
to generate an executable file. (RuntimeError)
You have to install development tools first.
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:435:in `try_link0'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:440:in `try_link'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:552:in `try_func'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:797:in `block in
have_func'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:693:in `block in
checking_for'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:280:in `block (2
levels) in postpone'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:254:in `open'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:280:in `block in
postpone'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:254:in `open'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:276:in `postpone'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:692:in `checking_for'
from c:/ruby192/lib/ruby/1.9.1/mkmf.rb:796:in `have_func'
from extconf.rb:5:in `<main>'
Gem files will remain installed in c:/ruby192/lib/ruby/gems/1.9.1/gems/
rdiscount-1.6.8 for inspection.
Results logged to c:/ruby192/lib/ruby/gems/1.9.1/gems/rdiscount-1.6.8/
ext/gem_make.out
C:\test>vim hello.c
C:\test>\devkit\devkitvars
Adding the DevKit to PATH...
C:\test>gcc hello.c -o hello.exe
C:\test>hello
Hello World!
C:\test>cd \devkit
C:\DevKit>ruby dk.rb review
Based upon the settings in the 'config.yml' file generated
from running 'ruby dk.rb init' and any of your customizations,
DevKit functionality will be injected into the following Rubies
when you run 'ruby dk.rb install'.
C:/ruby192
C:\test>type \ruby192\lib\ruby\gems\1.9.1\gems\rdiscount-1.6.8\ext
\mkmf.log
"cl -nologo -Feconftest -Ic:/ruby192/include/ruby-1.9.1/i386-mswin32 -
Ic:/ruby192/include/ruby-1.9.1
/ruby/backward -Ic:/ruby192/include/ruby-1.9.1 -I. -Ic:/ruby192/
include/ruby-1.9.1 -MD -Zi -W2 -O
2b2xg- -G6 -Zm600 conftest.c msvcrt-ruby191-static.lib oldnames.lib
user32.lib advapi32.lib shell
32.lib ws2_32.lib -link -incremental:no -debug -opt:ref -opt:icf -
libpath:. -libpath:c:/ruby192/
lib "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #define WIN32_LEAN_AND_MEAN
4: #define WIN32
5: #include <winsock2.h>
6: #include <ws2tcpip.h>
7: #include <windows.h>
8: int main() {return 0;}
/* end */
C:\test>gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.7
- RUBY VERSION: 1.9.2 (2010-12-25 patchlevel 136) [i386-mswin32]
- INSTALLATION DIRECTORY: c:/ruby192/lib/ruby/gems/1.9.1
- RUBY EXECUTABLE: c:/ruby192/bin/ruby.exe
- EXECUTABLE DIRECTORY: c:/ruby192/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-mswin32-60
- GEM PATHS:
- c:/ruby192/lib/ruby/gems/1.9.1
- C:/Documents and Settings/Administrator/.gem/ruby/1.9.1
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
-
http://rubygems.org/
C:\test>set
ALLUSERSPROFILE=C:\Documents and Settings\All Users.WINNT
APPDATA=C:\Documents and Settings\Administrator\Application Data
CommonProgramFiles=C:\Program Files\Common Files
COMPUTERNAME=QA-E11-99-243
ComSpec=C:\WINNT\system32\cmd.exe
HOMEDRIVE=C:
HOMEPATH=\Documents and Settings\Administrator
LOGONSERVER=\\QA-E11-99-243
NUMBER_OF_PROCESSORS=1
OS=Windows_NT
Os2LibPath=C:\WINNT\system32\os2\dll;
Path=C:\DevKit\bin;C:\DevKit\mingw\bin;C:\WINNT\system32;C:\WINNT;C:
\WINNT\System32\Wbem;c:\\ruby192
\bin;c:\\Program Files\Vim\vim73
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 6 Model 12 Stepping 2, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=0c02
ProgramFiles=C:\Program Files
PROMPT=$P$G
RI_DEVKIT=C:\DevKit\
SystemDrive=C:
SystemRoot=C:\WINNT
TEMP=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
TMP=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
USERDOMAIN=QA-E11-99-243
USERNAME=Administrator
USERPROFILE=C:\Documents and Settings\Administrator
windir=C:\WINNT
Note, the PATH above was after running devkitvars.bat.
I've tried installing rdiscount with/without "--verbose", "--debug"
flags but no change to mkfm.log. Also tried installing rdiscount
after running devkitvars.bat, no joy either.
Any idea where it is attempting to create the Makefile? A missing
directory is my current guess.
Any thing else I need to check?
Thank you,
Roy