[Win32utils-devel] [ win32utils-Bugs-16211 ] win32-service will not install/build corectly if the system has VC8

noreply at rubyforge.org noreply at rubyforge.org
Tue Dec 11 04:31:40 EST 2007


Bugs item #16211, was opened at 2007-12-10 15:40
You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=411&aid=16211&group_id=85

Category: win32-service
Group: Packaging
Status: Closed
Resolution: Rejected
Priority: 3
Submitted By: Sorin Sbarnea (intersol)
Assigned to: Daniel Berger (djberg96)
Summary: win32-service will not install/build corectly if the system has VC8

Initial Comment:
Currently ruby is compiled with VC6 and if someone does have VC8 installed the build will succeed but the extension will crash at load because incompatibilities between CTR.

#case 1: 
---------------------------
ruby.exe - Unable To Locate Component
---------------------------
This application has failed to start because MSVCR80.dll was not found. Re-installing the application may fix this problem. 
---------------------------
OK   
---------------------------


#case 2: (after coping the MSVCR80.dll to ruby.exe dir) (bad ideea, look down)

---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Runtime Error!

Program: c:\ruby\bin\ruby.exe

R6034

An application has made an attempt to load the C runtime library incorrectly.
Please contact the application's support team for more information.

-----------


Looking for a solution? 
#1 fast one - provide an already build gem with version 0.6

I've spend some time investigating this and I think that the problem is that the application must load the DLL from SxS directory instead of current directory. I don't have quite a good experience with this but i think these links could help:
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=132033&SiteID=1



----------------------------------------------------------------------

>Comment By: Sorin Sbarnea (intersol)
Date: 2007-12-11 11:31

Message:
I know, i've been documenting further and it's not possible.
Meanwile I've installed VC6 and made a hack

I've wrote some info regarding building with VC8, it's not
much but it's a start
http://nusunt.eu/Building_ruby_extensions_on_Windows_VC6/VC8

----------------------------------------------------------------------

Comment By: Daniel Berger (djberg96)
Date: 2007-12-11 02:57

Message:
Hi Sorin,

Well, I can't make VC8 work with VC6 - that's really not a bug. I have, however, provided a VC6 specific gem. You can grab it here:

http://rubyforge.org/frs/download.php/28400/win32-service-0.6.0-x86-mswin32-60.gem

I think rubygems 0.9.5 has a bug that will prevent you from installing it remotely. I recommend downloading the gem file and installing locally.

Closing ticket.

Regards,

Dan

----------------------------------------------------------------------

Comment By: Sorin Sbarnea (intersol)
Date: 2007-12-10 15:54

Message:
Some news:
At compile a file named daemon.so.manifest is generated but
it's not delivered nor loaded.

I've renamed the file to "ruby.exe.manifest" and copied to
c:\ruby\bin and surprize: it seams that to work, at lease
win32-service will pass the tests now.

Considering that ruby.exe is build with vc6 and is "hacked"
by this manifest to use newer CRT I don't know if this will
crash other things.

Do someone know how to run the tests for the entire ruby
installation including gems?

----------------------------------------------------------------------

You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=411&aid=16211&group_id=85


More information about the win32utils-devel mailing list