develooper Front page | perl.inline | Postings from January 2012

Inline::Ruby on Windows

Thread Next
From:
Josh Carr
Date:
January 17, 2012 23:59
Subject:
Inline::Ruby on Windows
Message ID:
DEBC929978CB4745ADDF73AF0E7FA8280A89B893@CPVGES8ES4.dhsnet.com
I am having a lot of trouble getting Inline::Ruby to install on Win32...I've tried going through CPAN shell, as well as simply downloading it and trying to work through the errors myself.  I am willing to work through most of the debugging if I can get somebody with a little knowledge of the Inline::* stuff to get me started.

More specifics:
Just trying to install from cpan, I get the error "Could not find the ruby interpreter on your PATH"

This was easy to fix, by manually correcting the Makefile.pl as such:
#-----ORIGINAL---------
#for $p (split /$Config{path_sep}/, $ENV{PATH}) {
#    $p =~ s/^~/$ENV{HOME}/;
#    $p .= "/ruby";
#   push @rubies, { path => $p } if -f $p && -x $p;
#}
#------EDIT----------------
push @rubies, {path=>'C:/Ruby192/bin/ruby.exe'};
------------------------------

Then I can run
perl Makefile.pl
Set up gcc environment - 3.4.5 (mingw-vista special r3)
Found 1 ruby executables on your PATH.
1. C:/Ruby192/bin/ruby.exe
Use which? [1] 1
Using C:/Ruby192/bin/ruby.exe
Using these settings:
   Extra Libs:  -lshell32 -lws2_32
   Ruby Lib:    -LC:/Ruby192/lib -lmsvcrt-ruby191.dll
   Includes:    -IC:/Ruby192/lib/ruby/1.9.1/i386-mingw32
   Extra Flags: none (perl Makefile.PL --help for details)
Checking if your kit is complete...
Looks good
Writing Makefile for Inline::Ruby
Writing MYMETA.yml

Ok, so far so good. Now I run 'dmake' and everything falls apart.  I am looking for a little guidance on how to get this module to build for me? Below is the output from dmake:

cp lib/Inline/Ruby.pod blib\lib\Inline\Ruby.pod
cp Ruby.pm blib\lib\Inline\Ruby.pm
C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils\xsubpp  -typemap C:\Perl\lib\ExtUtils\typem
ap  Ruby.xs > Ruby.xsc && C:\Perl\bin\perl.exe -MExtUtils::Command -e "mv" -- Ruby.xs
c Ruby.c
C:/Perl/site/bin/gcc.exe -c  -IC:/Ruby192/lib/ruby/1.9.1/i386-mingw32   -DNDEBUG -DWI
N32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICI
T_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D_USE_32BIT_TIME_T -DHASATTRIBUTE -fno-st
rict-aliasing -mms-bitfields -O2          -DVERSION=\"0.02\"    -DXS_VERSION=\"0.02\"
  "-IC:\Perl\lib\CORE"  -UEXPOSE_PERL -DCREATE_RUBY -UCREATE_PERL Ruby.c
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:25:25: ruby/config.h: No such file
or directory
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/defines.h:205,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:74,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:110:1: warning: "WNOHANG" redefin
ed
In file included from C:/Perl/lib/CORE/win32thread.h:4,
                 from C:/Perl/lib/CORE/perl.h:2852,
                 from rb2pl.h:5,
                 from Ruby.xs:26:
C:/Perl/lib/CORE/win32.h:190:1: warning: this is the location of the previous definit
ion
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/defines.h:205,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:74,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:192:1: warning: "stat" redefined
In file included from rb2pl.h:6,
                 from Ruby.xs:26:
C:/Perl/lib/CORE/XSUB.h:531:1: warning: this is the location of the previous definiti
on
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/defines.h:205,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:74,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:197:1: warning: "access" redefine
d
In file included from rb2pl.h:6,
                 from Ruby.xs:26:
C:/Perl/lib/CORE/XSUB.h:513:1: warning: this is the location of the previous definiti
on
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/defines.h:205,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:74,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:226: error: syntax error before "
rb_w32_pipe_exec"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:226: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:227: error: syntax error before '
*' token
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:268: error: conflicting types for
'chown'
C:/Perl/lib/CORE/win32.h:328: error: previous declaration of 'chown' was here
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:268: error: conflicting types for
'chown'
C:/Perl/lib/CORE/win32.h:328: error: previous declaration of 'chown' was here
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:270: error: syntax error before '
*' token
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:272: error: syntax error before '
*' token
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:273: error: syntax error before "
waitpid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:273: error: syntax error before "
int"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:273: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:274: error: syntax error before "
rb_w32_spawn"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:274: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:275: error: syntax error before "
rb_w32_aspawn"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:275: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:276: error: syntax error before '
*' token
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:278: error: syntax error before "
rb_w32_getpid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:278: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:279: error: syntax error before "
rb_w32_getppid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:279: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:291: warning: "struct stati64" de
clared inside parameter list
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:291: warning: its scope is only t
his definition or declaration, which is probably not what you want
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:292: warning: "struct stati64" de
clared inside parameter list
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/defines.h:205,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:74,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:417: error: syntax error before '
*' token
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/defines.h:205,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:74,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:418:30: macro "PerlProc_getuid" p
assed 1 arguments, but takes just 0
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:418: error: syntax error before "
PerlProc_getuid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:418: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:419:31: macro "PerlProc_geteuid"
passed 1 arguments, but takes just 0
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:419: error: syntax error before "
PerlProc_geteuid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:419: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:420:30: macro "PerlProc_getgid" p
assed 1 arguments, but takes just 0
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:420: error: syntax error before "
PerlProc_getgid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:420: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:421:31: macro "PerlProc_getegid"
passed 1 arguments, but takes just 0
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:421: error: syntax error before "
PerlProc_getegid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:421: warning: data definition has
no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:422: error: syntax error before '
*' token
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:423: error: syntax error before '
*' token
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/win32.h:662: error: redefinition of `stru
ct tms'
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:107: error: `SIZEOF_INT' undeclare
d here (not in a function)
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:108: error: `SIZEOF_LONG' undeclar
ed here (not in a function)
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:112: error: `SIZEOF_VOIDP' undecla
red here (not in a function)
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:1326,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/missing.h:63: error: syntax error before
'*' token
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/missing.h:75: error: syntax error before
'*' token
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/missing.h:165: error: syntax error before
"sizeof"
In file included from C:/Perl/site/lib/auto/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../
../../include/varargs.h:6,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:27,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:1327,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Perl/site/lib/auto/MinGW/bin/../lib/gcc/mingw32/3.4.5/include/varargs.h:4:2: #erro
r "GCC no longer implements <varargs.h>."
C:/Perl/site/lib/auto/MinGW/bin/../lib/gcc/mingw32/3.4.5/include/varargs.h:5:2: #erro
r "Revise your code to use <stdarg.h>."
In file included from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/ruby.h:1327,
                 from C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby.h:32,
                 from rb2pl.h:13,
                 from Ruby.xs:26:
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:509: error: syntax error before
"rb_pid_t"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:527: error: syntax error before
"rb_fork"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:527: warning: data definition ha
s no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:528: error: syntax error before
"rb_fork_err"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:528: warning: data definition ha
s no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:530: error: syntax error before
"rb_waitpid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:530: error: syntax error before
"pid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:530: warning: data definition ha
s no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:531: error: syntax error before
"pid"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:532: error: syntax error before
"rb_spawn"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:532: warning: data definition ha
s no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:533: error: syntax error before
"rb_spawn_err"
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:533: warning: data definition ha
s no type or storage class
C:/Ruby192/lib/ruby/1.9.1/i386-mingw32/ruby/intern.h:535: error: syntax error before
"pid"
Ruby.xs: In function `my_iter_it':
Ruby.xs:128: warning: passing arg 1 of `strlen' makes pointer from integer without a
cast
Ruby.xs:128: warning: passing arg 1 of `rb_intern2' makes pointer from integer withou
t a cast
Ruby.xs:128: warning: passing arg 1 of `rb_intern' makes pointer from integer without
a cast
Ruby.xs:129: error: structure has no member named `len'
Ruby.xs:129: error: structure has no member named `ptr'
Ruby.xs: In function `my_error_wrapper':
Ruby.xs:272: warning: assignment makes pointer from integer without a cast
Ruby.xs:288: error: structure has no member named `len'
Ruby.xs:288: error: structure has no member named `ptr'
Ruby.xs: In function `my_eval_string':
Ruby.xs:301: warning: passing arg 1 of `rb_eval_string' makes pointer from integer wi
thout a cast
Ruby.xs: In function `call_ruby_method':
Ruby.xs:329: warning: passing arg 1 of `strlen' makes pointer from integer without a
cast
Ruby.xs:329: warning: passing arg 1 of `rb_intern2' makes pointer from integer withou
t a cast
Ruby.xs:329: warning: passing arg 1 of `rb_intern' makes pointer from integer without
a cast
dmake.exe:  Error code 129, while making 'Ruby.o'



Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About