SketchySteve
asked on
RE: Using Inline C - under windows. Urgent
Hi there,
I have a fairly simple C function which I need to itegrate into a perl script. I have looked around and Inline (http://search.cpan.org/~ingy/Inline-0.43/C/C.pod) seems to be the simplest way to acheive this.
First I needed nmake for Visual Studio 6.0 C++. I found this file here http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/Nmake15.exe installed it and set a path variable so it could be found.
After installing Inline and nmake I am still unable to run simple hello world c progs or any other type either. I always get this message.
Had problems bootstrapping Inline module 'hello_pl_b1a6'
Can't locate loadable object for module hello_pl_b1a6 in @INC (@INC contains: C:\_Inline\lib C:/Perl/lib C:/Perl/site/li
b .) at C:/Perl/site/lib/Inline.pm line 500
at C:\hello.pl line 0
INIT failed--call queue aborted.
This is a very urgent problem and help would be appreciated greatly. Am really wracking my brain to work out what might be going wrong. Could it be that my version of Perl was not compiled with nmake (i'm using 5.8 with windows XP)?
Here is the program giving the error message
use Inline C;
greet('Ingy');
greet(42);
__END__
__C__
void greet(char* name) {
printf("Hello %s!\n", name);
}
This is from the inline cook book and all other program fail aswell (in the same way).
I have a fairly simple C function which I need to itegrate into a perl script. I have looked around and Inline (http://search.cpan.org/~ingy/Inline-0.43/C/C.pod) seems to be the simplest way to acheive this.
First I needed nmake for Visual Studio 6.0 C++. I found this file here http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/Nmake15.exe installed it and set a path variable so it could be found.
After installing Inline and nmake I am still unable to run simple hello world c progs or any other type either. I always get this message.
Had problems bootstrapping Inline module 'hello_pl_b1a6'
Can't locate loadable object for module hello_pl_b1a6 in @INC (@INC contains: C:\_Inline\lib C:/Perl/lib C:/Perl/site/li
b .) at C:/Perl/site/lib/Inline.pm
at C:\hello.pl line 0
INIT failed--call queue aborted.
This is a very urgent problem and help would be appreciated greatly. Am really wracking my brain to work out what might be going wrong. Could it be that my version of Perl was not compiled with nmake (i'm using 5.8 with windows XP)?
Here is the program giving the error message
use Inline C;
greet('Ingy');
greet(42);
__END__
__C__
void greet(char* name) {
printf("Hello %s!\n", name);
}
This is from the inline cook book and all other program fail aswell (in the same way).
do you also have the visual c++ compiler and linker installed? To use Inline::C, you need a compiler.
ASKER
I have just installed Visual Studio 6.0 and am still getting the same error message. It is ther german version - should this make a difference. What settings to i need to adjust?
Thanks
Steve
Thanks
Steve
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Cheers dude - sorted :)
ASKER
Microsoft (R) Program Maintenance Utility Version 1.50
Copyright (c) Microsoft Corp 1988-94. All rights reserved.
C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils/xsubp
19.xs > hello_pl_b1a688f821f70719.
llo_pl_b1a688f821f70719.c
cl -c -IC:/ -nologo -Gf -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SE
ED -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -MD -Zi -DNDEBUG -O1 -DVERSION=\"0.
00\" -DXS_VERSION=\"0.00\" "-IC:\Perl\lib\CORE" hello_pl_b1a688f821f70719.
'cl' is not recognized as an internal or external command,
operable program or batch file.
NMAKE : fatal error U1077: 'C:\WINDOWS\system32\cmd.e
Stop.
A problem was encountered while attempting to compile and install your Inline
C code. The command that failed was:
nmake > out.make 2>&1
The build directory was:
C:\_Inline\build\hello_pl_
To debug the problem, cd to the build directory, and inspect the output files.