RE: linking COLAMD, CCOLAMD, ZLIB

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

RE: linking COLAMD, CCOLAMD, ZLIB

Andrew Funk
Hi John, David, and all,

I did have multiple versions (2.9.4 from web and latest from cvs) installed.
I cleared everything out and built just the cvs version, and sparse is
working now.

Now, after also clearing out octave-forge, I am trying to build it against
the cvs version (before I had built it successfully with 2.9.4 only).  Make
is not finding pcre.h (see output below).  I tried the trick of specifying
the location of pcre.h to configure, and that did change the output of
configure (seemed to find it) but it did not change the behavior or make
(which seems to be calling g++ with the config parameters from the main
octave installation).

Any ideas what I am doing wrong now? =)

Thanks,
Andy

Processing main/strings/...
make[2]: Entering directory
`/home/afunk/octave-forge-2005.06.13/main/strings'
mkoctfile -DHAVE_OCTAVE_29 -v pcregexp.cc -lpcre
g++ -c -I/home/afunk/zlib/include -I/home/afunk/UFsparse/COLAMD
-I/home/afunk/UFsparse/CCOLAMD -fPIC
-I/home/afunk/octave-cvs_bin/include/octave-2.9.4
-I/home/afunk/octave-cvs_bin/include/octave-2.9.4/octave
-I/home/afunk/octave-cvs_bin/include -mieee-fp -g -O2 -DHAVE_OCTAVE_29
pcregexp.cc -o pcregexp.o
pcregexp.cc:26:18: pcre.h: No such file or directory
pcregexp.cc: In function `octave_value_list Fpcregexp(const
octave_value_list&, int)':
pcregexp.cc:50: error: `pcre' undeclared (first use this function)
pcregexp.cc:50: error: (Each undeclared identifier is reported only once for
each function it appears in.)
pcregexp.cc:50: error: `re' undeclared (first use this function)
pcregexp.cc:53: error: `pcre_compile' undeclared (first use this function)
pcregexp.cc:62: error: `PCRE_INFO_CAPTURECOUNT' undeclared (first use this
function)
pcregexp.cc:62: error: `pcre_fullinfo' undeclared (first use this function)
pcregexp.cc:66: error: `pcre_exec' undeclared (first use this function)
pcregexp.cc:68: error: `PCRE_ERROR_NOMATCH' undeclared (first use this
function)
pcregexp.cc:71: error: `pcre_free' undeclared (first use this function)
pcregexp.cc:79: error: `pcre_get_substring_list' undeclared (first use this
function)
pcregexp.cc:81: error: `PCRE_ERROR_NOMEMORY' undeclared (first use this
function)
pcregexp.cc:103: error: `pcre_free_substring_list' undeclared (first use
this function)
make[2]: *** [pcregexp.oct] Error 1
make[2]: Target `all' not remade because of errors.
make[2]: Leaving directory
`/home/afunk/octave-forge-2005.06.13/main/strings'
make[1]: *** [strings/] Error 2

> -----Original Message-----
> From: John W. Eaton [mailto:[hidden email]]
> Sent: Saturday, February 04, 2006 2:20 AM
> To: Andrew Funk
> Subject: RE: linking COLAMD, CCOLAMD, ZLIB
>
> Do you have another version of Octave installed on your system?  Do
> you also have a copy of Octave Forge installed for that?
>
> My copy of 2.9.4, installed from a Debian package, does not crash for
> sparse (eye (3)).
>
> jwe
>
>



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

Re: linking COLAMD, CCOLAMD, ZLIB

David Bateman-3
Andrew Funk wrote:

> Hi John, David, and all,
>
> I did have multiple versions (2.9.4 from web and latest from cvs)
> installed.
> I cleared everything out and built just the cvs version, and sparse is
> working now.
>
> Now, after also clearing out octave-forge, I am trying to build it
> against
> the cvs version (before I had built it successfully with 2.9.4 only).  
> Make
> is not finding pcre.h (see output below).  I tried the trick of
> specifying
> the location of pcre.h to configure, and that did change the output of
> configure (seemed to find it) but it did not change the behavior or make
> (which seems to be calling g++ with the config parameters from the main
> octave installation).
>
> Any ideas what I am doing wrong now? =)
>
> Thanks,
> Andy
>
Andy,

Note sure why you can't find pcre correctly for the build of
octave-forge. Have you tried to run

./autogen.sh
./configure
make clean
make

in octave-forge, as maybe there is some hold-over from an older build?
In any case the regexp.cc function in octave's CVS itself now includes
the use of pcre if it is installed and you can do pcre type regexp with
it. It is also fully compatiable with matlab's regexp function. Note as
this is in the CVS only, you'll have to remove regexp.oct from
octave-forge as this will override the version in octave itself.

Regards
David

> Processing main/strings/...
> make[2]: Entering directory
> `/home/afunk/octave-forge-2005.06.13/main/strings'
> mkoctfile -DHAVE_OCTAVE_29 -v pcregexp.cc -lpcre
> g++ -c -I/home/afunk/zlib/include -I/home/afunk/UFsparse/COLAMD
> -I/home/afunk/UFsparse/CCOLAMD -fPIC
> -I/home/afunk/octave-cvs_bin/include/octave-2.9.4
> -I/home/afunk/octave-cvs_bin/include/octave-2.9.4/octave
> -I/home/afunk/octave-cvs_bin/include -mieee-fp -g -O2 -DHAVE_OCTAVE_29
> pcregexp.cc -o pcregexp.o
> pcregexp.cc:26:18: pcre.h: No such file or directory
> pcregexp.cc: In function `octave_value_list Fpcregexp(const
> octave_value_list&, int)':
> pcregexp.cc:50: error: `pcre' undeclared (first use this function)
> pcregexp.cc:50: error: (Each undeclared identifier is reported only
> once for
> each function it appears in.)
> pcregexp.cc:50: error: `re' undeclared (first use this function)
> pcregexp.cc:53: error: `pcre_compile' undeclared (first use this
> function)
> pcregexp.cc:62: error: `PCRE_INFO_CAPTURECOUNT' undeclared (first use
> this
> function)
> pcregexp.cc:62: error: `pcre_fullinfo' undeclared (first use this
> function)
> pcregexp.cc:66: error: `pcre_exec' undeclared (first use this function)
> pcregexp.cc:68: error: `PCRE_ERROR_NOMATCH' undeclared (first use this
> function)
> pcregexp.cc:71: error: `pcre_free' undeclared (first use this function)
> pcregexp.cc:79: error: `pcre_get_substring_list' undeclared (first use
> this
> function)
> pcregexp.cc:81: error: `PCRE_ERROR_NOMEMORY' undeclared (first use this
> function)
> pcregexp.cc:103: error: `pcre_free_substring_list' undeclared (first use
> this function)
> make[2]: *** [pcregexp.oct] Error 1
> make[2]: Target `all' not remade because of errors.
> make[2]: Leaving directory
> `/home/afunk/octave-forge-2005.06.13/main/strings'
> make[1]: *** [strings/] Error 2
>
> > -----Original Message-----
> > From: John W. Eaton [mailto:[hidden email]]
> > Sent: Saturday, February 04, 2006 2:20 AM
> > To: Andrew Funk
> > Subject: RE: linking COLAMD, CCOLAMD, ZLIB
> >
> > Do you have another version of Octave installed on your system?  Do
> > you also have a copy of Octave Forge installed for that?
> >
> > My copy of 2.9.4, installed from a Debian package, does not crash for
> > sparse (eye (3)).
> >
>


--
David Bateman                                [hidden email]
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph)
Parc Les Algorithmes, Commune de St Aubin    +33 6 72 01 06 33 (Mob)
91193 Gif-Sur-Yvette FRANCE                  +33 1 69 35 77 01 (Fax)

The information contained in this communication has been classified as:

[x] General Business Information
[ ] Motorola Internal Use Only
[ ] Motorola Confidential Proprietary



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

Re: linking COLAMD, CCOLAMD, ZLIB

Dmitri A. Sergatskov
On 2/22/06, David Bateman <[hidden email]> wrote:
> Andrew Funk wrote:

> > Make
> > is not finding pcre.h (see output below).  I tried the trick of
> > specifying
> > the location of pcre.h to configure, and that did change the output of
...
>
> Note sure why you can't find pcre correctly for the build of
> octave-forge. Have you tried to run
>

I suspect that pcre.h is in /usr/include/pcre/pcre.h (I think Fedora Core 3 and
Redhat Enterprise 4 have it this way). I remember a discussion about it a year
or so ago. I do not remember the conclusion, but my personal solution was to
make a symlink
/usr/include/pcre.h -> /usr/include/pcre/pcre.h

Regards,

Dmitri.
--



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

Re: linking COLAMD, CCOLAMD, ZLIB

John W. Eaton-6
On 22-Feb-2006, Dmitri A. Sergatskov wrote:

| On 2/22/06, David Bateman <[hidden email]> wrote:
| > Andrew Funk wrote:
|
| > > Make
| > > is not finding pcre.h (see output below).  I tried the trick of
| > > specifying
| > > the location of pcre.h to configure, and that did change the output of
| ...
| >
| > Note sure why you can't find pcre correctly for the build of
| > octave-forge. Have you tried to run
| >
|
| I suspect that pcre.h is in /usr/include/pcre/pcre.h (I think Fedora Core 3 and
| Redhat Enterprise 4 have it this way). I remember a discussion about it a year
| or so ago. I do not remember the conclusion, but my personal solution was to
| make a symlink
| /usr/include/pcre.h -> /usr/include/pcre/pcre.h

Probably it would be better to fix Octave's configure script to search
for either pcre.h or pcre/pcre.h.

jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

RE: linking COLAMD, CCOLAMD, ZLIB

Andrew Funk
In reply to this post by Dmitri A. Sergatskov
David was right:  I had neglected to run autogen.sh before configure.
Actually it doesn't say to do that in the INSTALL....

Anyway it's working now, thanks for your help.

- Andy

> -----Original Message-----
> From: Dmitri A. Sergatskov [mailto:[hidden email]]
> Sent: Wednesday, February 22, 2006 12:44 PM
> To: [hidden email]
> Cc: Andrew Funk; John W. Eaton; [hidden email]
> Subject: Re: linking COLAMD, CCOLAMD, ZLIB
>
> On 2/22/06, David Bateman <[hidden email]> wrote:
> > Andrew Funk wrote:
>
> > > Make
> > > is not finding pcre.h (see output below).  I tried the trick of
> > > specifying
> > > the location of pcre.h to configure, and that did change
> the output of
> ...
> >
> > Note sure why you can't find pcre correctly for the build of
> > octave-forge. Have you tried to run
> >
>
> I suspect that pcre.h is in /usr/include/pcre/pcre.h (I think
> Fedora Core 3 and
> Redhat Enterprise 4 have it this way). I remember a
> discussion about it a year
> or so ago. I do not remember the conclusion, but my personal
> solution was to
> make a symlink
> /usr/include/pcre.h -> /usr/include/pcre/pcre.h
>
> Regards,
>
> Dmitri.
> --
>
>
>
> -------------------------------------------------------------
> Octave is freely available under the terms of the GNU GPL.
>
> Octave's home on the web:  http://www.octave.org
> How to fund new projects:  http://www.octave.org/funding.html
> Subscription information:  http://www.octave.org/archive.html
> -------------------------------------------------------------
>
>



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

Re: linking COLAMD, CCOLAMD, ZLIB

Quentin Spencer
In reply to this post by John W. Eaton-6
John W. Eaton wrote:

>On 22-Feb-2006, Dmitri A. Sergatskov wrote:
>
>| On 2/22/06, David Bateman <[hidden email]> wrote:
>| > Andrew Funk wrote:
>|
>| > > Make
>| > > is not finding pcre.h (see output below).  I tried the trick of
>| > > specifying
>| > > the location of pcre.h to configure, and that did change the output of
>| ...
>| >
>| > Note sure why you can't find pcre correctly for the build of
>| > octave-forge. Have you tried to run
>| >
>|
>| I suspect that pcre.h is in /usr/include/pcre/pcre.h (I think Fedora Core 3 and
>| Redhat Enterprise 4 have it this way). I remember a discussion about it a year
>| or so ago. I do not remember the conclusion, but my personal solution was to
>| make a symlink
>| /usr/include/pcre.h -> /usr/include/pcre/pcre.h
>
>Probably it would be better to fix Octave's configure script to search
>for either pcre.h or pcre/pcre.h.
>  
>

We had a related discussion about this issue before and you proposed the
idea of the configure script searching for all headers in this way. Did
you ever make any changes along these lines? I ask because it would make
packaging for Fedora cleaner: the glpk headers are in /usr/include/glpk
(there are a lot of them, so putting them there is a good idea) and
octave only looks in /usr/include, so I had to add extra flags at the
configure step.

-Quentin



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

Re: linking COLAMD, CCOLAMD, ZLIB

Dmitri A. Sergatskov
In reply to this post by John W. Eaton-6
On 2/22/06, John W. Eaton <[hidden email]> wrote:

> On 22-Feb-2006, Dmitri A. Sergatskov wrote:
>
> | On 2/22/06, David Bateman <[hidden email]> wrote:
> | > Andrew Funk wrote:
> |
> | > > Make
> | > > is not finding pcre.h (see output below).  I tried the trick of
> | > > specifying
> | > > the location of pcre.h to configure, and that did change the output of
> | ...
> | >
> | > Note sure why you can't find pcre correctly for the build of
> | > octave-forge. Have you tried to run
> | >
> |
> | I suspect that pcre.h is in /usr/include/pcre/pcre.h (I think Fedora Core 3 and
> | Redhat Enterprise 4 have it this way). I remember a discussion about it a year
> | or so ago. I do not remember the conclusion, but my personal solution was to
> | make a symlink
> | /usr/include/pcre.h -> /usr/include/pcre/pcre.h
>
> Probably it would be better to fix Octave's configure script to search
> for either pcre.h or pcre/pcre.h.
>

The relocation of pcre into its private subdirectory broke quite a few
programs,
there were some public outcry, bug reports etc., and as a result
RedHat moved it back into /usr/include in FC4.
So I am not sure it worth to spent much effort solving this problem.

> jwe
>

Dmitri.
--



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

Re: linking COLAMD, CCOLAMD, ZLIB

John W. Eaton-6
In reply to this post by Quentin Spencer
On 22-Feb-2006, Quentin Spencer wrote:

| We had a related discussion about this issue before and you proposed the
| idea of the configure script searching for all headers in this way. Did
| you ever make any changes along these lines? I ask because it would make
| packaging for Fedora cleaner: the glpk headers are in /usr/include/glpk
| (there are a lot of them, so putting them there is a good idea) and
| octave only looks in /usr/include, so I had to add extra flags at the
| configure step.

I think the correct way to do this is to use AC_CHECK_HEADERS instead
of AC_CHECK_HEADER.  We already do this for some files.  I don't think
it makes sense to do it for all headers, but we should check multiple
locations for those that we expect could be installed in
subdirectories like pcre.

jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

RE: linking COLAMD, CCOLAMD, ZLIB

John W. Eaton-6
In reply to this post by Andrew Funk
On 22-Feb-2006, Andrew Funk wrote:

| David was right:  I had neglected to run autogen.sh before configure.
| Actually it doesn't say to do that in the INSTALL....

The INSTALL file is a generic description of how to install packages
that use autoconf-generated configure scripts and Makefiles.  The
INSTALL.OCTAVE file that it mentions is generated from Texinfo
sources, so it is not available in a checkout from CVS.  I guess the
assumption is that if you are checking out from CVS, you'll know what
to do.  Since we often tell people to try the CVS version, I think it
would be good to have a short description of what to do to build from
CVS.  Maybe a simple INSTALL.CVS text file?  Would someone like to
contribute that?

Thanks,

jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

RE: linking COLAMD, CCOLAMD, ZLIB

Andrew Funk
Just to clarify, this is the package I was attempting to build:

octave-forge-2005.06.13.tar.gz

(against the circa 2/2/06 cvs version of Octave)

> -----Original Message-----
> From: John W. Eaton [mailto:[hidden email]]
> Sent: Wednesday, February 22, 2006 1:29 PM
> To: Andrew Funk
> Cc: [hidden email]
> Subject: RE: linking COLAMD, CCOLAMD, ZLIB
>
> On 22-Feb-2006, Andrew Funk wrote:
>
> | David was right:  I had neglected to run autogen.sh before
> configure.
> | Actually it doesn't say to do that in the INSTALL....
>
> The INSTALL file is a generic description of how to install packages
> that use autoconf-generated configure scripts and Makefiles.  The
> INSTALL.OCTAVE file that it mentions is generated from Texinfo
> sources, so it is not available in a checkout from CVS.  I guess the
> assumption is that if you are checking out from CVS, you'll know what
> to do.  Since we often tell people to try the CVS version, I think it
> would be good to have a short description of what to do to build from
> CVS.  Maybe a simple INSTALL.CVS text file?  Would someone like to
> contribute that?
>
> Thanks,
>
> jwe
>
>
>
> -------------------------------------------------------------
> Octave is freely available under the terms of the GNU GPL.
>
> Octave's home on the web:  http://www.octave.org
> How to fund new projects:  http://www.octave.org/funding.html
> Subscription information:  http://www.octave.org/archive.html
> -------------------------------------------------------------
>
>



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

Re: linking COLAMD, CCOLAMD, ZLIB

John W. Eaton-6
In reply to this post by Dmitri A. Sergatskov
On 22-Feb-2006, Dmitri A. Sergatskov wrote:

| The relocation of pcre into its private subdirectory broke quite a few
| programs,
| there were some public outcry, bug reports etc., and as a result
| RedHat moved it back into /usr/include in FC4.
| So I am not sure it worth to spent much effort solving this problem.

I don't think it would be much effort, and will likely be needed for
other headers.  For example, debian currently dumps a lot of junk
directly into /usr/include (look at all the H5 headers for hdf5) and I
think that is a bug that other systems might not wish to duplicate.

jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------