[snip] The problem in your example is that your "END_C" marker needs to be, um, at the end of the C. =) Move it to right after the closing bracket of the greet() function. [/snip]
I had already tried that, still the same result. A compilation error. I removed all but the C code and still got the same error. use Inline C => <<'END_C'; void greet() { printf("Hello, world\n"); } END_C greet > -----Original Message----- > From: Jay Blanchard [mailto:[EMAIL PROTECTED] > Sent: Tuesday, October 18, 2005 9:46 AM > To: inline@perl.org > Subject: RE: Compiler question... > > [snip] > Assuming you package your code as a module and not a script, > you won't need a compiler on the runtime box, but you'll need > one on the box you use to *build* the module. You can then > install the module on the runtime box without a compiler, > just by copying the right files to the right places. The two > boxes will need to be essentially identical WRT architecture, > versions of perl & the dynamic loaders installed, etc. > [/snip] > > Perhaps an example...the following is called hello.pl > > $url = "http://$ENV{SERVER_NAME}$ENV{URL}"; > $ip = "$ENV{REMOTE_ADDR}"; > > use Inline C => <<'END_C'; > void greet() { > printf("Hello, world\n"); > } > > > print <<ENDOFTEXT; > HTTP/1.0 200 OK > Content-Type: text/html > > <HTML> > <HEAD><TITLE>Hello World!</TITLE></HEAD> <BODY> > <H4>greet</H4> //should be the output of the greet function > <P>You have reached <a href="$url">$url</a></P> <P>Your IP > Address is $ip</P> > > > <H5>Have a nice day!</H5> > </BODY> > </HTML> > > ENDOFTEXT > END_C > exit(0); > > > If I take out the Incline C statements this works fine, leave > them in and I get; > > at E:\sitegrp1\TEST20051010\hello.pl line 4 BEGIN > failed--compilation aborted at > E:\sitegrp1\TEST20051010\hello.pl line 27. > > I am assuming that this message is telling me that the C code > is not compiling. >