[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.
> 

Reply via email to