Building Ruby by newbi on Win32

Hi, All,

My first post here:) I am trying something I have been doing with Lua
for years - dragging Ruby source files into an empty VS project and
trying to build it. That's all on Win32 XP with MSVS. It doesn't
compile! Missing config.h, which I can't find anywhere in ruby source
except for VMS, not for Win32, some constants defined in parse.c are
used in lex.c and so they don't compile either. Any ideas as I can
succeed at what I am doing? I hope I am not trying to do something
people have never expected anyone to do:)
I am still browsing through the web site in search of any info as to
what might be going on, but will appreciate ideas and pointers here as
well.

Thanks

dingo wrote:

Hi, All,

My first post here:) I am trying something I have been doing with Lua
for years - dragging Ruby source files into an empty VS project and
trying to build it. That's all on Win32 XP with MSVS. It doesn't
compile! Missing config.h, which I can't find anywhere in ruby source
except for VMS, not for Win32, some constants defined in parse.c are
used in lex.c and so they don't compile either. Any ideas as I can
succeed at what I am doing? I hope I am not trying to do something
people have never expected anyone to do:)

config.h is, confusingly enough, a header file with configuration. Machine and user-specific configuration. Usually a configuration script, confusingly called "configure", generates this header file, and a makefile you can use to build the program. This essential is usually described in a file someone confusingly named INSTALL or README, sneakily hidden in the main directory of the source archive.

Welcome to the POSIX build process. Lua is an exception rather than a rule in that you can build it that way due to being a very simple language and environment. Whoever makes the one-click installer might eb able to describe how to build Ruby using MSVS in more detail, I'd just get MinGW and use a POSIX environment where the ./configure && make all install incantation works.

David Vallner

Never mind, folks,
Built it:) A ton of warnings of all sorts, but nevertheless.

dingo wrote:

···

Hi, All,

My first post here:) I am trying something I have been doing with Lua
for years - dragging Ruby source files into an empty VS project and
trying to build it. That's all on Win32 XP with MSVS. It doesn't
compile! Missing config.h, which I can't find anywhere in ruby source
except for VMS, not for Win32, some constants defined in parse.c are
used in lex.c and so they don't compile either. Any ideas as I can
succeed at what I am doing? I hope I am not trying to do something
people have never expected anyone to do:)
I am still browsing through the web site in search of any info as to
what might be going on, but will appreciate ideas and pointers here as
well.

Thanks

Sorry, saw your note too late - not vary familiar with Google groups
yet.

Thanks anyhow. Yeah, I first did the configure thing, according to the
readme file [the instructions for this have one step missing BTW too]
and then noticed that it produced the needed config.h. Had to poke
around with a few other things here and there to finally have it built.

Also the POSIX build process produces executable that is about 40%
larger then my release build. Go figure:)

D.

David Vallner wrote:

···

dingo wrote:
> Hi, All,
>
> My first post here:) I am trying something I have been doing with Lua
> for years - dragging Ruby source files into an empty VS project and
> trying to build it. That's all on Win32 XP with MSVS. It doesn't
> compile! Missing config.h, which I can't find anywhere in ruby source
> except for VMS, not for Win32, some constants defined in parse.c are
> used in lex.c and so they don't compile either. Any ideas as I can
> succeed at what I am doing? I hope I am not trying to do something
> people have never expected anyone to do:)

config.h is, confusingly enough, a header file with configuration.
Machine and user-specific configuration. Usually a configuration script,
confusingly called "configure", generates this header file, and a
makefile you can use to build the program. This essential is usually
described in a file someone confusingly named INSTALL or README,
sneakily hidden in the main directory of the source archive.

Welcome to the POSIX build process. Lua is an exception rather than a
rule in that you can build it that way due to being a very simple
language and environment. Whoever makes the one-click installer might eb
able to describe how to build Ruby using MSVS in more detail, I'd just
get MinGW and use a POSIX environment where the ./configure && make all
install incantation works.

David Vallner

dingo wrote:

Also the POSIX build process produces executable that is about 40%
larger then my release build. Go figure:)

Compiling in support for extra features or creating unoptimized code by default maybe? At least Curt Hibbs' builds and Linux ones create a static executable that invokes the interpreter stored in ruby18.dll, so there might be some size overhead appearing around those parts too.

I can't really vouch for MinGW or whateer you used as far as code compactness is concerned.

*shrug*

David Vallner