I'm having some very strange build problems on Windows, and thought
someone here might be able to point out the problem quickly. One
important bit I'll bring out up front is that I'm using the free
Microsoft compiler, so that could be causing the problem. If it is,
though, it sure isn't clear how.
Anyhow, I start with the usual "win32\configure.bat" followed by
"nmake". Everything seems to work fine at this point, although I do get
the following warning at one point:
oldnames.lib user32.lib advapi32.lib wsock32.lib
cl -nologo main.obj dmyext.obj array.obj bignum.obj
class.obj compar.obj dir.obj dln.obj enum.obj error.obj eval.obj
file.obj gc.obj hash.obj inits.obj io.obj marshal.obj math.obj
numeric.obj object.obj pack.obj parse.obj prec.obj process.obj
random.obj range.obj re.obj regex.obj ruby.obj signal.obj
sprintf.obj st.obj string.obj struct.obj time.obj util.obj
variable.obj version.obj acosh.obj crypt.obj erf.obj win32.obj
oldnames.lib user32.lib advapi32.lib wsock32.lib -Feminiruby.exe -link
-incremental:no -debug -opt:ref -opt:icf
LINK : warning LNK4089: all references to 'ADVAPI32.dll' discarded by
/OPT:REF
At this point, I seem to have a working ruby (and miniruby) - manually
running "miniruby rubytest.rb" outputs "test succeeded" as it should.
However, if I run "nmake test", I get the following output:
oldnames.lib user32.lib advapi32.lib wsock32.lib
cl -nologo main.obj dmyext.obj array.obj bignum.obj
class.obj compar.obj dir.obj dln.obj enum.obj error.obj eval.obj
file.obj gc.obj hash.obj inits.obj io.obj marshal.obj math.obj
numeric.obj object.obj pack.obj parse.obj prec.obj process.obj
random.obj range.obj re.obj regex.obj ruby.obj signal.obj
sprintf.obj st.obj string.obj struct.obj time.obj util.obj
variable.obj version.obj acosh.obj crypt.obj erf.obj win32.obj
oldnames.lib user32.lib advapi32.lib wsock32.lib -Feminiruby.exe -link
-incremental:no -debug -opt:ref -opt:icf
parse.obj : error LNK2001: unresolved external symbol _ruby_verbose
sprintf.obj : error LNK2001: unresolved external symbol _ruby_verbose
variable.obj : error LNK2001: unresolved external symbol _ruby_verbose
error.obj : error LNK2001: unresolved external symbol _ruby_verbose
eval.obj : error LNK2001: unresolved external symbol _ruby_verbose
marshal.obj : error LNK2019: unresolved external symbol _ruby_verbose
referenced in function _w_object
object.obj : error LNK2001: unresolved external symbol _ruby_verbose
eval.obj : error LNK2019: unresolved external symbol _ruby_prog_init
referenced in function _ruby_init
eval.obj : error LNK2019: unresolved external symbol
_ruby_process_options referenced in function _ruby_options
eval.obj : error LNK2001: unresolved external symbol _ruby_debug
eval.obj : error LNK2019: unresolved external symbol _rb_load_file
referenced in function _rb_load
io.obj : error LNK2001: unresolved external symbol _ruby_inplace_mode
io.obj : error LNK2001: unresolved external symbol _rb_argv
miniruby.exe : fatal error LNK1120: 7 unresolved externals
And my miniruby disappears! I'm guessing ruby is actually OK, but it's
still causing me a bit of concern. Any ideas?
Thanks,
Nathaniel
Terralien, Inc.
<:((><