Exerb question

I am using exerb to create executables under Windows. Certain scripts
work fine in the interpreter but generate an error after compiling. The
errors only occur under XP and Win2K - everything works fine in
Win95/98/ME. Has anyone had similar experiences or know of a possible
solution?

Ruby version: ruby 1.6.7 (2002-03-01) [i586-mswin32]
exerb version: 2.2.0

Thanks / Floyd

Sorry - forgot to include the error message:

···

phy9000020.rb:77: [BUG] Segmentation fault
ruby 1.6.7 (2002-03-01) [i586-mswin32]

abnormal program termination

Floyd Smith wrote:

I am using exerb to create executables under Windows. Certain scripts
work fine in the interpreter but generate an error after compiling. The
errors only occur under XP and Win2K - everything works fine in
Win95/98/ME. Has anyone had similar experiences or know of a possible
solution?

Ruby version: ruby 1.6.7 (2002-03-01) [i586-mswin32]
exerb version: 2.2.0

Thanks / Floyd

Really to answer this, more information is needed re: what you’re
trying to do.

I recently discovered that 1.6.7 (which exerb 2.2.0 is based on)
doesn’t do threading in Windows.

-austin
– Austin Ziegler, austin@halostatue.ca on 2002.10.26 at 13.53.28

Some questions:

Is this what happens to exerb when rolling up your exe? Or is this a
runtime error from your exe? Is the file phy9000020.rb the fiel that you
are “compiling”?

– Nikodemus

···

On Sun, 27 Oct 2002, Floyd Smith wrote:

phy9000020.rb:77: [BUG] Segmentation fault
ruby 1.6.7 (2002-03-01) [i586-mswin32]

I am using the Ruby script as an OLE automation client. The server
is Attachmate Extra(version 6.5). Attachmate is a terminal emulation
program that exposes a very complete mainframe terminal interface. My
program basically navigates through an online report system (RMDS)
screen by screen extracting data that matches certain criteria.

Since the script works perfectly every time running under the
interpreter and the compiled program works fine under Win95/98/ME/NT, I
assume that something about XP/Win2K is incompatible with certain
executables created by exerb. I say ‘certain’ because I have another
application where Excel is the OLE server that doesn’t seem to have any
issues on XP/Win2K machines.

I’m not familiar enough with either Ruby or exerb to know where to start
looking for a solution.

Thanks in advance / Floyd

Austin Ziegler wrote:

···

Really to answer this, more information is needed re: what you’re
trying to do.

I recently discovered that 1.6.7 (which exerb 2.2.0 is based on)
doesn’t do threading in Windows.

-austin
– Austin Ziegler, austin@halostatue.ca on 2002.10.26 at 13.53.28

Um… isn’t that an exaggeration? I thought that
there was a thread bug, but I’m not aware that
threads are simply non-functional in Windows
under 1.6.7.

Hal

···

----- Original Message -----
From: “Austin Ziegler” austin@halostatue.ca
To: “ruby-talk ML” ruby-talk@ruby-lang.org
Sent: Saturday, October 26, 2002 12:54 PM
Subject: Re: exerb question

I recently discovered that 1.6.7 (which exerb 2.2.0 is based on)
doesn’t do threading in Windows.

The error occurs at runtime. phy9000020.rb is my program. Exerb
completes building the executable with no problems. The error doesn’t
happen immediately - I can enter my search criteria in a form (vruby)
but once I start the OLE automation part of the program, I usually get
the error within a few iterations. As I said before, the executable
runs fine under Win95/98/ME/NT and the program works correctly in the
interpreter even on XP/Win2K machines.

Floyd

Nikodemus Siivola wrote:

···

On Sun, 27 Oct 2002, Floyd Smith wrote:

phy9000020.rb:77: [BUG] Segmentation fault
ruby 1.6.7 (2002-03-01) [i586-mswin32]

Some questions:

Is this what happens to exerb when rolling up your exe? Or is this a
runtime error from your exe? Is the file phy9000020.rb the fiel that you
are “compiling”?

– Nikodemus

Perhaps, but in the one program that I’ve written which uses
threading, it simply fails to work at all under the 1.6.7-5
Windows build, not just under exerb. The program starts, but dies
about 1% into the thread itself.

-austin
– Austin Ziegler, austin@halostatue.ca on 2002.10.26 at 19.29.27

···

On Sun, 27 Oct 2002 03:52:48 +0900, Hal E. Fulton wrote:

From: “Austin Ziegler” austin@halostatue.ca

I recently discovered that 1.6.7 (which exerb 2.2.0 is based on)
doesn’t do threading in Windows.
Um… isn’t that an exaggeration? I thought that there was a
thread bug, but I’m not aware that threads are simply
non-functional in Windows under 1.6.7.

As I said before, the executable
runs fine under Win95/98/ME/NT and the program works correctly in the
interpreter even on XP/Win2K machines.

phy9000020.rb:77: [BUG] Segmentation fault
ruby 1.6.7 (2002-03-01) [i586-mswin32]

I’ve had some intermittent segfaults doing OLE stuffs on win2k, totally
separate from exerb. Some of my problems have been consistent with win32ole
0.4.5 through 0.5.1, ruby 1.6.6 and 1.7.2. I’ve not tried them on NT, only
win2k. I have one script that connects to “winmgmts:…” – the script works
great, but always segfaults at the end (I assume during garbage collection).
Another script attaches to IIS and it hangs ruby.exe at the end. A third
script gave me intermittent problems (hanging), creating a lot of
scriptlets – I recoded it to reuse some of the scriptlet instances and the
problems went away.

So … all that to say that maybe your problem is not necessarily with
exerb. Or maybe exerb is exacerbating a situation in win32ole.so.

Chris
http://clabs.org