From: Sean on
I downloaded the XML-Parser module from
http://search.cpan.org/~msergeant/XML-Parser/Parser.pm
and I untar the source ball to $HOME/local/XML-Parser-2.34.
Can someone give me some helps? I appreciate!


Here is what I did and what errors I got:

1) sean$cd local/XML-Parser-2.34
2) XML-Parser-2.34$ ls
Changes Expat MANIFEST Makefile.PL Parser Parser.pm README blib
pm_to_blib samples t
3) XML-Parser-2.34$ perl Makefile.PL PREFIX=$HOME/local/perl
Writing Makefile for XML::Parser::Expat
Writing Makefile for XML::Parse
4) XML-Parser-2.34$ make
make[1]: Entering directory `/home/seany/local/XML-Parser-2.34/Expat'
cc -c -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"2.34\" -DXS_VERSION=\"2.34\"
-fPIC "-I/usr/lib/perl/5.8/CORE" Expat.c
Expat.xs:12:19: error: expat.h: No such file or directory
Expat.xs:60: error: syntax error before 'XML_Parser'
Expat.xs:60: warning: no semicolon at end of struct or union
Expat.xs:78: error: syntax error before ':' token
Expat.xs:79: error: syntax error before ':' token
Expat.xs:80: error: syntax error before ':' token
Expat.xs:106: error: syntax error before '}' token
Expat.xs:106: warning: data definition has no type or storage class
......(lots of similar errors)
make[1]: *** [Expat.o] Error 1

From: Jim Gibson on
In article <1159813056.433524.132420(a)c28g2000cwb.googlegroups.com>,
Sean <seanatpurdue(a)hotmail.com> wrote:

> I downloaded the XML-Parser module from
> http://search.cpan.org/~msergeant/XML-Parser/Parser.pm
> and I untar the source ball to $HOME/local/XML-Parser-2.34.
> Can someone give me some helps? I appreciate!
>
>
> Here is what I did and what errors I got:
>
> 1) sean$cd local/XML-Parser-2.34
> 2) XML-Parser-2.34$ ls
> Changes Expat MANIFEST Makefile.PL Parser Parser.pm README blib
> pm_to_blib samples t
> 3) XML-Parser-2.34$ perl Makefile.PL PREFIX=$HOME/local/perl
> Writing Makefile for XML::Parser::Expat
> Writing Makefile for XML::Parse
> 4) XML-Parser-2.34$ make
> make[1]: Entering directory `/home/seany/local/XML-Parser-2.34/Expat'
> cc -c -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN
> -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
> -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"2.34\" -DXS_VERSION=\"2.34\"
> -fPIC "-I/usr/lib/perl/5.8/CORE" Expat.c
> Expat.xs:12:19: error: expat.h: No such file or directory
> Expat.xs:60: error: syntax error before 'XML_Parser'
> Expat.xs:60: warning: no semicolon at end of struct or union
> Expat.xs:78: error: syntax error before ':' token
> Expat.xs:79: error: syntax error before ':' token
> Expat.xs:80: error: syntax error before ':' token
> Expat.xs:106: error: syntax error before '}' token
> Expat.xs:106: warning: data definition has no type or storage class
> .....(lots of similar errors)
> make[1]: *** [Expat.o] Error 1
>

Do you have the expat library installed? XML::Parser is a Perl wrapper
for using the expat C library. Try here: http://expat.sourceforge.net/

In the meantime, you can try XML::SAX::PurePerl, but it will be much
slower than XML::Parser and expat.
From: Sean on
well, I think the C Expat library should be self-contained in this perl
XML-Parser module. Here is a 'try-to-prove'. I see a Expat.c there.

XML-Parser-2.34$ cd Expat/
Expat$ ls
Expat.c Expat.pm Expat.xs Makefile Makefile.PL encoding.h
pm_to_blib typemap

So, the previous question was about why Expat.h was missing.

Thanks,
Sean

Jim Gibson wrote:
> In article <1159813056.433524.132420(a)c28g2000cwb.googlegroups.com>,
> Sean <seanatpurdue(a)hotmail.com> wrote:
>
> > I downloaded the XML-Parser module from
> > http://search.cpan.org/~msergeant/XML-Parser/Parser.pm
> > and I untar the source ball to $HOME/local/XML-Parser-2.34.
> > Can someone give me some helps? I appreciate!
> >
> >
> > Here is what I did and what errors I got:
> >
> > 1) sean$cd local/XML-Parser-2.34
> > 2) XML-Parser-2.34$ ls
> > Changes Expat MANIFEST Makefile.PL Parser Parser.pm README blib
> > pm_to_blib samples t
> > 3) XML-Parser-2.34$ perl Makefile.PL PREFIX=$HOME/local/perl
> > Writing Makefile for XML::Parser::Expat
> > Writing Makefile for XML::Parse
> > 4) XML-Parser-2.34$ make
> > make[1]: Entering directory `/home/seany/local/XML-Parser-2.34/Expat'
> > cc -c -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN
> > -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
> > -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"2.34\" -DXS_VERSION=\"2.34\"
> > -fPIC "-I/usr/lib/perl/5.8/CORE" Expat.c
> > Expat.xs:12:19: error: expat.h: No such file or directory
> > Expat.xs:60: error: syntax error before 'XML_Parser'
> > Expat.xs:60: warning: no semicolon at end of struct or union
> > Expat.xs:78: error: syntax error before ':' token
> > Expat.xs:79: error: syntax error before ':' token
> > Expat.xs:80: error: syntax error before ':' token
> > Expat.xs:106: error: syntax error before '}' token
> > Expat.xs:106: warning: data definition has no type or storage class
> > .....(lots of similar errors)
> > make[1]: *** [Expat.o] Error 1
> >
>
> Do you have the expat library installed? XML::Parser is a Perl wrapper
> for using the expat C library. Try here: http://expat.sourceforge.net/
>
> In the meantime, you can try XML::SAX::PurePerl, but it will be much
> slower than XML::Parser and expat.

From: Jim Gibson on
In article <1159815171.108585.90750(a)i3g2000cwc.googlegroups.com>, Sean
<seanatpurdue(a)hotmail.com> wrote:

[top-posting fixed]

> Jim Gibson wrote:
> > In article <1159813056.433524.132420(a)c28g2000cwb.googlegroups.com>,
> > Sean <seanatpurdue(a)hotmail.com> wrote:
> >
> > > I downloaded the XML-Parser module from
> > > http://search.cpan.org/~msergeant/XML-Parser/Parser.pm
> > > and I untar the source ball to $HOME/local/XML-Parser-2.34.
> > > Can someone give me some helps? I appreciate!
> > >
> > >
> > > Here is what I did and what errors I got:
> > >
....
> > > Expat.xs:12:19: error: expat.h: No such file or directory
....
> >
> > Do you have the expat library installed? XML::Parser is a Perl wrapper
> > for using the expat C library. Try here: http://expat.sourceforge.net/
> >
> > In the meantime, you can try XML::SAX::PurePerl, but it will be much
> > slower than XML::Parser and expat.
>
> well, I think the C Expat library should be self-contained in this perl
> XML-Parser module. Here is a 'try-to-prove'. I see a Expat.c there.

Well, you might think so, but you would be wrong.

>
> XML-Parser-2.34$ cd Expat/
> Expat$ ls
> Expat.c Expat.pm Expat.xs Makefile Makefile.PL encoding.h
> pm_to_blib typemap
>
> So, the previous question was about why Expat.h was missing.

The missing file is expat.h, not Expat.h (case matters in Unix).
expat.h is included with the expat distribution, not XML::Parser.

Expat.c is generated as part of the XML::Parser build process by the
xsubpp utility (see the comments in Expat.c).

You will have to download and install the expat distribution if it does
not exist on your system. If it does exist in a non-standard location,
use the EXPINCPATH and EXPATLIBPATH arguments in the 'perl Makefile.PL
....' step to specify where the include and library files for expat may
be found.
From: Ben Morrow on
[please don't top-post]

Quoth "Sean" <seanatpurdue(a)hotmail.com>:
> Jim Gibson wrote:
> > In article <1159813056.433524.132420(a)c28g2000cwb.googlegroups.com>,
> > Sean <seanatpurdue(a)hotmail.com> wrote:
> >
> > > Here is what I did and what errors I got:
> > >
> > > 4) XML-Parser-2.34$ make
> > > make[1]: Entering directory `/home/seany/local/XML-Parser-2.34/Expat'
> > > cc -c -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN
> > > -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
> > > -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"2.34\" -DXS_VERSION=\"2.34\"
> > > -fPIC "-I/usr/lib/perl/5.8/CORE" Expat.c
> > > Expat.xs:12:19: error: expat.h: No such file or directory
> > > Expat.xs:60: error: syntax error before 'XML_Parser'
> >
> > Do you have the expat library installed? XML::Parser is a Perl wrapper
> > for using the expat C library. Try here: http://expat.sourceforge.net/
> >
> > In the meantime, you can try XML::SAX::PurePerl, but it will be much
> > slower than XML::Parser and expat.
>
> well, I think the C Expat library should be

ITYM 'I think it is' rather than 'I think it should be'? In any case, it
isn't. Did you read the README?

> self-contained in this perl
> XML-Parser module. Here is a 'try-to-prove'. I see a Expat.c there.
>
> XML-Parser-2.34$ cd Expat/
> Expat$ ls
> Expat.c Expat.pm Expat.xs Makefile Makefile.PL encoding.h
> pm_to_blib typemap
>
> So, the previous question was about why Expat.h was missing.

Expat.h ne expat.h. Filenames are case-sensitive under Unix.

expat is a lot more than one C file. That Expat.c is produced from
Expat.xs, and is part of the glue between Perl and expat.

Now, do you have expat installed somewhere weird so MakeMaker can't find
it, or do you not have it installed at all?

Ben

--
Raise your hand if you're invulnerable.
[benmorrow(a)tiscali.co.uk]
 |  Next  |  Last
Pages: 1 2
Prev: Is there neq for strings?
Next: Net::SSH stuck