Forum: Ruby c-extension problem

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
74361169979a843b3a5c12d81000debc?d=identicon&s=25 Jon Egil Strand (Guest)
on 2006-01-21 21:24
(Received via mailing list)
Dear list.

After reading through this walkthrough (1) of compiling c-extensions on
Windows I was finally able to build the pickaxe example on two different
PC's. One with Visual Studio 2003, the other with Visual C++ express
2005.
Both compiled, only one worked. This raises some issues.

I) Should I try to fix this? I mean, will working with C-extensions
bring
   me down the road of never-ending versioning/library/compiler/...
   problems.

II) If yes, how to fix the technical issues at hand today?

Any suggestions would be very welcome.

Anyway, here's what happened.


Building on VS 2003 gave a working result at first try. C++ express 2005
however gave two distinct errors when running



irb: require 'Test'

GUI warning-box:
   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.

irb: Load error 126 ...



After searching from mscvr80.dll, finding it here(2) and copying it to
c:\windows\system32 the following error appeared:

irb: require 'Test'

GUI warning-box
   Microsoft Visual C++ Runtime Library
   Rumtime Error!
   Program: c:\progra~1\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.

irb: Load error 1114...


All the best
Jon Egil Strand


(1) http://www.koontzfamily.org/david/blog/?p=230
Note that I had to install Microsofts Platform SDK from MSDN seperately.

(2)
C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_0de06acd
Dedb38b3571b323b77bc9b221e940172?d=identicon&s=25 ruby talk (Guest)
on 2006-01-21 21:37
(Received via mailing list)
Hello,
How did you compile the example in 2003? I am tring to do it with the
makefile not a compiler. When I create a blank c++ console project for
the
code it gives me linking errors.
Thank you for any help
Becker
74361169979a843b3a5c12d81000debc?d=identicon&s=25 Jon Egil Strand (Guest)
on 2006-01-21 21:46
(Received via mailing list)
Becker

Sorry about the lack of details. I also used the makefile approach.

I used textpad, a simple text-editor, for writing the .c-code and then
extconf.rb and nmake.exe from VS 2003.exe. The walkthrough in footnote
(1)
was very helpfull, although I must agree that this i cumbersome.

Note that I had to install not only VS2003, but also the Platform SDK
(for
2003-server, but works for my XP-sp2) to get it all going.
Dedb38b3571b323b77bc9b221e940172?d=identicon&s=25 ruby talk (Guest)
on 2006-01-21 22:02
(Received via mailing list)
Sorry to bug you for more details. How do you run nmake.exe from 2003?

Becker
74361169979a843b3a5c12d81000debc?d=identicon&s=25 Jon Egil Strand (Guest)
on 2006-01-21 22:08
(Received via mailing list)
Becker

> Sorry to bug you for more details. How do you run nmake.exe from 2003?

No problem. Actually I don't run it from within 2003, I open a
command-window, cd to the right directory and just run nmake.

You should really read this:
http://www.koontzfamily.org/david/blog/?p=230

All the best
JE
Dedb38b3571b323b77bc9b221e940172?d=identicon&s=25 ruby talk (Guest)
on 2006-01-21 23:02
(Received via mailing list)
hello
A few more questions, Where was your source file? I used the one click
installer and i do not see the scr folder. I downloaded the tar source
from the ruby website and i am using that.

Nmake. When i type it in the command line it does not recognize it. I
set up the variables for the system like the website said to. If I use
the nmake in the VC7\bin i get the cl is not recognized

The echo shows what should be there and extconf.rb does what is should.

Its the damn Nmake!

Becker
31ab75f7ddda241830659630746cdd3a?d=identicon&s=25 Austin Ziegler (Guest)
on 2006-01-22 00:10
(Received via mailing list)
On 21/01/06, Jon Egil Strand <jes@luretanker.no> wrote:
> After reading through this walkthrough (1) of compiling c-extensions on
> Windows I was finally able to build the pickaxe example on two different
> PC's. One with Visual Studio 2003, the other with Visual C++ express 2005.
> Both compiled, only one worked. This raises some issues.

Avoid compiling with Visual C++ 2005 for now. There are some ...
changes that Microsoft has made. I am working on compiling with Visual
C++ 2005 and have a couple of patches to finish trying from Nobu that
may help alleviate this situation.

-austin
Dedb38b3571b323b77bc9b221e940172?d=identicon&s=25 ruby talk (Guest)
on 2006-01-22 23:46
(Received via mailing list)
I get this error when tring nmake.
        cl -nologo -LD -FeTest.so TcTest.obj Test.obj msvcrt-ruby18.lib
oldname
s.lib user32.lib advapi32.lib wsock32.lib  -link -incremental:no -debug
-opt:ref
 -opt:icf -dll -libpath:"c:/ruby/lib" -def:Test-i386-mswin32.def
cl : Command line warning D4024 : unrecognized source file type '.',
object
file
 assumed
LINK : fatal error LNK1104: cannot open file '.'
NMAKE : fatal error U1077: 'F:\WINDOWS\system32\cmd.exe' : return code
'0x2'
Stop.

I dont see where in the make file that line is. also where in that
line there just just a dot?

Becker
31ab75f7ddda241830659630746cdd3a?d=identicon&s=25 Austin Ziegler (Guest)
on 2006-01-23 00:31
(Received via mailing list)
On 22/01/06, ruby talk <rubytalk@gmail.com> wrote:
> NMAKE : fatal error U1077: 'F:\WINDOWS\system32\cmd.exe' : return code '0x2'
> Stop.
>
> I dont see where in the make file that line is. also where in that
> line there just just a dot?

Again, if you're trying this with Visual Studio 2005, please hold off.
I am preparing a comprehensive set of instructions.

-austin
This topic is locked and can not be replied to.