Hello all,
> While the code works fine with Linux, crumbles on XP saying "Can't find
> string terminator "EOM" anywhere before EOF at recordProxy.pl line 317".
> Line 317 in my code is: $response= <<"EOM";
Nevermind, this was just a dos2Unix ASCII issue :S
The code works great on Windows...
Thanks,
- Santosh
------- Original Message -------
> From: perl_beginner <[EMAIL PROTECTED]>
> To: John W. Krahn <[EMAIL PROTECTED]>; "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
> Subject: Re: Writing Platform Independant Perl Code
> Date: Fri, 13 Jun 2003 13:58:41 -0700 (PDT)
>
>
> Hey All,
>
> Thanks folks for all the pointers,
>
> From the replies so far, I see two approaches. I need to work with
> files/pathnames through portable perl modules. This means I don't have to
> actually perform any OS-specific work before installation of the
> application.
>
> As I go through the documentation for MakeMaker, couple of questions come
> up at this stage, is the objective of ExtUtils::MakeMaker to actually
> resolve OS specific issues at Install time? I maybe wrong, but it appears
> to me:
>
> 1. It is preferred to write portable code which does not have to be
> tweaked at installation time. That leaves the primary objective of the
> initial Makefile work to simply build binaries. Doing the dirty work of the
> developer to generate platform-dependant code IS (as per good practice) NOT
> it's domain.
>
> 2. A more specific question, is this the right way to handle code that
> works on Linux and:
> a. "forks" a process (won't work on Win environments)
> b. Handles OS Signals like $SIG{ALRM} (- as above -)
>
> I will RTFM while these questions remain open... all the same your
> thoughts are welcome.
>
> Finally, I changed my code to work with File::Spec and File::Copy. I
> commented out the signal handling part. There is nothing else
> platform-specific. I tried taking my server to Windows XP.
>
> While the code works fine with Linux, crumbles on XP saying "Can't find
> string terminator "EOM" anywhere before EOF at recordProxy.pl line 317".
> Line 317 in my code is: $response= <<"EOM";
>
> I get the feeling that this is a more general class of errors which is why
> I mention it on the list. (No ;-) I don't expect anyone to debug my code).
> If anyone has any comments on this error they are most welcome, I shall
> continue working on trying to identify what's wrong.
>
> Thank you for your time and your kind attention...
>
> Best Regards,
> Santosh Dawara
>
> ------- Original Message -------
> > From: John W. Krahn <[EMAIL PROTECTED]>
> > To: "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
> > Subject: Re: Writing Platform Independant Perl Code
> > Date: Fri, 13 Jun 2003 12:06:37 -0700
> >
> >
> > Perl_beginner wrote:
> > >
> > > Hello all,
> >
> > Hello,
> >
> > > I have finished writing up a neat Perl server which works
> > > just fine on Linux. I want to see it work seamlessly on
> > > other platforms too (Windows/*Nix)
> >
> > perldoc perlport
> > perldoc perltrap
> > perldoc perlwin32
> > perldoc perl[your operating system]
> >
> >
> > > The first issue that I see, is with people who want to use
> > > my server on Windows. Directory seperators ('/' -> '\\')
> > > have to be changed before the script can be run on Win32.
> > > Or atleast I think that is the case.
> >
> > No, that is not the case. The Windows shell (command.com) requires the
> > separator to be '\' however perl "talks" directly to the OS which allows
> > the use of '/'.
> >
> >
> > > From past experience, I know that several perl modules
> > > come with a Makefile.PL or atleast some way whereby the
> > > user can:
> > > 1. Unpack the code delivered
> > > 2. Specify his platform and execute some script
> > > 3. The script preps the code for the platform
> > > 3. User can now use the customized application
> > >
> > > I have no idea how to go about doing this! Any pointers
> > > or resources would be helpful.
> >
> > perldoc ExtUtils::MakeMaker
> >
> >
> > > The second issue,
> > > How do I keep pathnames platform independant. This
> > > precludes the necessity of writing a solution to
> > > install the application on the users machine. Please
> > > note that the application accepts some pathnames as
> > > command-line parameters.
> >
> > The modules in the File hierarchy should be portable.
> >
> > perldoc File::Basename
> > perldoc File::Spec
> > perldoc File::Path
> > perldoc File::Glob
> > etc.
> >
> >
> >
> > John
> > --
> > use Perl;
> > program
> > fulfillment
> >
> > --
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]