7.0RC2 compile error !
Hi all,
I am running mandrake 7.0 on an AMD450
when trying to complie 7.0RC2 I get the folowing error :-
In file included from pgconnection.cc:18:
pgconnection.h:84: syntax error before `('
pgconnection.cc:116: syntax error before `::'
...........
Need any more details ?
TIA,
Frank.
Hi all,
I am running mandrake 7.0 on an AMD450
when trying to complie 7.0RC2 I get the folowing error :-In file included from pgconnection.cc:18:
pgconnection.h:84: syntax error before `('
pgconnection.cc:116: syntax error before `::'
...........
Well, seems it is in the libpq++ compile. I am confused why you are
having a problem at that point in the compile, though.
--
Bruce Momjian | http://www.op.net/~candle
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Yes:
g++ -v
-- Bruce Momjian | http://www.op.net/~candle pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026Reading specs from /usr/lib/gcc-lib/i586-mardrake-linux/2.95.2/specs
gcc version 2.95.2 19991024 (release)
Pretty recent. It certainly compiles under gcc version 2.7.2.1. Strange.
Maybe it is a buggy g++. Just a guess.
--
Bruce Momjian | http://www.op.net/~candle
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Import Notes
Reply to msg id not found: 390F8EAE.DF5EF494@ieee.org | Resolved by subject fallback
Pretty recent. It certainly compiles under gcc version 2.7.2.1. Strange.
Maybe it is a buggy g++. Just a guess.
I'm running the same distro/version and the current cvs tree (a bit
more recent than Frank's example afaik) compiles without errors.
I'll guess that it is a configuration issue on Frank's machine, or
that RC2 predates the last libpq++ code fixes.
- Thomas
--
Thomas Lockhart lockhart@alumni.caltech.edu
South Pasadena, California
Thomas Lockhart wrote:
Pretty recent. It certainly compiles under gcc version 2.7.2.1. Strange.
Maybe it is a buggy g++. Just a guess.I'm running the same distro/version and the current cvs tree (a bit
more recent than Frank's example afaik) compiles without errors.I'll guess that it is a configuration issue on Frank's machine, or
that RC2 predates the last libpq++ code fixes.- Thomas
--
Thomas Lockhart lockhart@alumni.caltech.edu
South Pasadena, California
Well I just downloaded 7.0RC3 and it still produces
the same compiler errors :(
As far as my machine configuration, the machine I
just compiled this on is a new install Mandrake 7.0 no
fiddles, so I can only assume that everyone with this
distr can expect this problem.
BTW Mandrake just became #1 download distro.
Where do I go from here ? (be nice ;)
On Wed, 03 May 2000, frank wrote:
Thomas Lockhart wrote:
I'm running the same distro/version and the current cvs tree (a bit
more recent than Frank's example afaik) compiles without errors.
Well I just downloaded 7.0RC3 and it still produces
the same compiler errors :(
As far as my machine configuration, the machine I
just compiled this on is a new install Mandrake 7.0 no
fiddles, so I can only assume that everyone with this
distr can expect this problem.
BTW Mandrake just became #1 download distro.
Where do I go from here ? (be nice ;)
Thomas: rpm -qa >thomas.rpm-list
Frank: rpm -qa >frank.rpm-list
Thomas, send thomas.rpm-list to Frank.
Frank, diff thomas.rpm-list frank.rpm-list and see what development libraries
etc Thomas has that you don't.
--
Lamar Owen
WGCR Internet Radio
1 Peter 4:11
On Wed, May 03, 2000 at 09:32:53AM -0400, frank wrote:
Well I just downloaded 7.0RC3 and it still produces
the same compiler errors :(
As far as my machine configuration, the machine I
just compiled this on is a new install Mandrake 7.0 no
fiddles, so I can only assume that everyone with this
distr can expect this problem.
BTW Mandrake just became #1 download distro.Where do I go from here ? (be nice ;)
Configuration details: did you feed ./configure any special switches?
Ross
--
Ross J. Reedstrom, Ph.D., <reedstrm@rice.edu>
NSBRI Research Scientist/Programmer
Computer and Information Technology Institute
Rice University, 6100 S. Main St., Houston, TX 77005
Where do I go from here ? (be nice ;)
Configuration details: did you feed ./configure any special switches?
The output of configure would also be interesting. Also, I've forgotten
exactly what the error messages you got were? (Time for another whine
about the sad state of the pghackers archives :-()
regards, tom lane
frank <f.callaghan@ieee.org> writes:
Configuration details: did you feed ./configure any special switches?
The output of configure would also be interesting. Also, I've forgotten
exactly what the error messages you got were? (Time for another whine
about the sad state of the pghackers archives :-()
In file included from pgconnection.cc:18:
pgconnection.h:84: syntax error before `('
pgconnection.cc:116: syntax error before `::'
OK, both of those are pointing at uses of datatype "string". I suspect
that this code near the head of pgconnection.h is failing to fire:
#ifdef HAVE_CXX_STRING_HEADER
#include <string>
#endif
either because you indeed haven't got the C++ standard <string> header
(not to be confused with C's <string.h> --- is there a separate "devel"
RPM for C++ header files? if so, do you have it?), or because configure
got confused and failed to define HAVE_CXX_STRING_HEADER when it should.
Can't tell which though; the config.cache file you sent doesn't record
anything about HAVE_CXX_STRING_HEADER.
regards, tom lane
Import Notes
Reply to msg id not found: 39103FAE.14920C31@ieee.org
frank <f.callaghan@ieee.org> writes:
(on errors with Mandrake)
Well I just downloaded 7.0RC3 and it still produces
the same compiler errors :(
It compiles just fine on Red Hat Linux 6.2
This wouldn't be the first time Mandrake ship a bad compiler - try to
install the ones from Red Hat 6.2 (and libstdc++ w/headers) and see if
that works.
--
Trond Eivind Glomsr�d
Red Hat, Inc.
Import Notes
Reply to msg id not found: franksmessageofWed03May2000093253-0400
On Wed, 3 May 2000, Tom Lane wrote:
Where do I go from here ? (be nice ;)
Configuration details: did you feed ./configure any special switches?
The output of configure would also be interesting. Also, I've forgotten
exactly what the error messages you got were? (Time for another whine
about the sad state of the pghackers archives :-()
wait, now I'm confused ... I just did a ... oops ... hold ... let me fix
that last archive file ... brb ...
okay, check it now ... just got the Apr stuff that was directed to the
wrong directory parsed back in, mhonarc'd and is currently indexing ...
On Wed, 3 May 2000, The Hermit Hacker wrote:
On Wed, 3 May 2000, Tom Lane wrote:
Where do I go from here ? (be nice ;)
Configuration details: did you feed ./configure any special switches?
The output of configure would also be interesting. Also, I've forgotten
exactly what the error messages you got were? (Time for another whine
about the sad state of the pghackers archives :-()wait, now I'm confused ... I just did a ... oops ... hold ... let me fix
that last archive file ... brb ...
Marc G. Fournier ICQ#7615664 IRC Nick: Scrappy
Systems Administrator @ hub.org
primary: scrappy@hub.org secondary: scrappy@{freebsd|postgresql}.org
frank <f.callaghan@ieee.org> writes:
Yup your dead right, the <string> include failed in the configure.
Isn't configure supposed to tell the user that something failed ?,
I have no idea what is an acceptable configuration for this s/w !
checking for namespace std in C++... yes
checking for include <string> in C++... no
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Yup, there's our problem. Your C++ setup is evidently pretty modern,
since it knows what namespace std is. My guess is that you don't have
the headers for libstdc++ installed.
It would probably be a good idea to add another configure test to see
whether class "string" is actually available, and disable building
libpq++ if not. (We shouldn't simply kill libpq++ if the "include
<string>" test fails, since older C++ installations may have class
string in <string.h>. But if we can't find a header that defines class
string at all, then libpq++ is definitely going to fall over.)
Any objections if I sneak in such a configure test? Should be a
low-risk change.
regards, tom lane
Import Notes
Reply to msg id not found: 391053AD.C8706034@ieee.org
On Wed, 3 May 2000, Tom Lane wrote:
frank <f.callaghan@ieee.org> writes:
Yup your dead right, the <string> include failed in the configure.
Isn't configure supposed to tell the user that something failed ?,
I have no idea what is an acceptable configuration for this s/w !checking for namespace std in C++... yes
checking for include <string> in C++... no^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Yup, there's our problem. Your C++ setup is evidently pretty modern,
since it knows what namespace std is. My guess is that you don't have
the headers for libstdc++ installed.It would probably be a good idea to add another configure test to see
whether class "string" is actually available, and disable building
libpq++ if not. (We shouldn't simply kill libpq++ if the "include
<string>" test fails, since older C++ installations may have class
string in <string.h>. But if we can't find a header that defines class
string at all, then libpq++ is definitely going to fall over.)Any objections if I sneak in such a configure test? Should be a
low-risk change.
go for it, I want to do up a quick RC4 with th efixes to the docs that I
did the other day, so let me know when, and I'll do it then ...
The Hermit Hacker <scrappy@hub.org> writes:
Any objections if I sneak in such a configure test? Should be a
low-risk change.
go for it, I want to do up a quick RC4 with th efixes to the docs that I
did the other day, so let me know when, and I'll do it then ...
OK, done.
regards, tom lane
done ... there is an RC4 there now, with just your configure changes and
the docs ones ...
This will be the release on Monday unless anyone has anything else major
to add ... :)
On Wed, 3 May 2000, Tom Lane wrote:
The Hermit Hacker <scrappy@hub.org> writes:
Any objections if I sneak in such a configure test? Should be a
low-risk change.go for it, I want to do up a quick RC4 with th efixes to the docs that I
did the other day, so let me know when, and I'll do it then ...OK, done.
regards, tom lane
Marc G. Fournier ICQ#7615664 IRC Nick: Scrappy
Systems Administrator @ hub.org
primary: scrappy@hub.org secondary: scrappy@{freebsd|postgresql}.org
Tom Lane writes:
It would probably be a good idea to add another configure test to see
whether class "string" is actually available, and disable building
libpq++ if not. (We shouldn't simply kill libpq++ if the "include
<string>" test fails, since older C++ installations may have class
string in <string.h>. But if we can't find a header that defines class
string at all, then libpq++ is definitely going to fall over.)
As a short term solution, why not, it's already bad enough. But for the
future I'd like to suggest the adoption of a different principle: It's not
acceptable for parts of the tree to not be built based on the results of
configure tests. There are several reasons for that, the first and
foremost being that a configure script is not interactive. Users shouldn't
be required to monitor what flies by or, worse yet, deduce from cryptic
messages that stuff isn't going to be build at all. This is an incredible
can of worms for a package that interfaces to so many other software. For
the benefit of both users and maintainers, a configure run with the same
options must produce an installation that behaves the same on any
machine. I know this is slightly impractical in some cases, but only in
some.
In this particular case what ought to happen is this: When the package is
being configured to build libpq++ (whether by default or explicitly) and
some necessary feature is missing then the build must fail hard. Silently
ignoring build errors as has been suggested is equally problematic because
users will not sit in front of their terminal for 20 minutes and scan the
make output. In practice it might be preferrable to not make the C++ build
default because it's really no more special than say the Perl or Tcl
interface and exposes people that don't really care/know about C++ to
gratuitous problems. Also, the current configure run will fail if you
don't have a C++ compiler at all.
--
Peter Eisentraut Sernanders v�g 10:115
peter_e@gmx.net 75262 Uppsala
http://yi.org/peter-e/ Sweden
Peter Eisentraut <peter_e@gmx.net> writes:
As a short term solution, why not, it's already bad enough. But for the
future I'd like to suggest the adoption of a different principle: It's not
acceptable for parts of the tree to not be built based on the results of
configure tests. There are several reasons for that, the first and
foremost being that a configure script is not interactive. Users shouldn't
be required to monitor what flies by or, worse yet, deduce from cryptic
messages that stuff isn't going to be build at all.
It currently says:
***
Disabling build of libpq++ because we cannot find class string in the
system's C++ header files.
***
Too cryptic for you?
I have a different take on the matter: it's not acceptable for a default
build of Postgres to fail hard because the local system's C++ compiler
is broken, libstdc++ is missing or incomplete, etc. There are too many
machines that fit that description and too few people using libpq++ to
justify treating libpq++ as an essential component.
Perhaps we could agree on a compromise that libpq++ ought not be built
at all unless specifically requested by a configure switch (eg,
"--with-libpq++"). If the user actually asked for it, then failing hard
is reasonable behavior. It's too late to make such a change for 7.0,
I think, but we could do it for 7.1.
Silently ignoring build errors as has been suggested is equally
problematic because users will not sit in front of their terminal for
20 minutes and scan the make output.
Right, I don't like that idea either.
Also, the current configure run will fail if you
don't have a C++ compiler at all.
Fail completely? I haven't tried that lately, but from the Autoconf
docs I'd expect it to set CXX=gcc and then all the C++ feature tests
would fail because gcc isn't there (or doesn't grok C++) --- which as
things currently stand would end in our deciding not to build libpq++.
Seems fairly reasonable. If configure actually falls over in that case
then we've blown it...
regards, tom lane
It would probably be a good idea to add another configure test to see
whether class "string" is actually available, and disable building
libpq++ if not. (We shouldn't simply kill libpq++ if the "include
<string>" test fails, since older C++ installations may have class
string in <string.h>. But if we can't find a header that defines class
string at all, then libpq++ is definitely going to fall over.)Any objections if I sneak in such a configure test? Should be a
low-risk change.regards, tom lane
I would like to see one other user with the problem first.
--
Bruce Momjian | http://www.op.net/~candle
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Bruce Momjian <pgman@candle.pha.pa.us> writes:
It would probably be a good idea to add another configure test to see
whether class "string" is actually available, and disable building
libpq++ if not.
I would like to see one other user with the problem first.
Frank's problem was that he had only installed the runtime RPM for
libstdc++, not the devel RPM. Do you think he's the only such user?
(Especially considering that he said he was running a stock Mandrake
distro...)
Anyway, the fix is already committed, and it's the least of the
damage I've done today. Amazing how permissive Marc gets when a bug
is biting him personally ;-). Do you want to argue for putting off
the release date so we can get more testing on these fixes?
regards, tom lane
On Fri, 5 May 2000, Tom Lane wrote:
Bruce Momjian <pgman@candle.pha.pa.us> writes:
It would probably be a good idea to add another configure test to see
whether class "string" is actually available, and disable building
libpq++ if not.I would like to see one other user with the problem first.
Frank's problem was that he had only installed the runtime RPM for
libstdc++, not the devel RPM. Do you think he's the only such user?
(Especially considering that he said he was running a stock Mandrake
distro...)Anyway, the fix is already committed, and it's the least of the
damage I've done today. Amazing how permissive Marc gets when a bug
is biting him personally ;-). Do you want to argue for putting off
the release date so we can get more testing on these fixes?
I swear, no matter what software I use, if there is a bug that can be
tweaked or triggered, I'll find a way to do it *sigh*
Bruce Momjian <pgman@candle.pha.pa.us> writes:
It would probably be a good idea to add another configure test to see
whether class "string" is actually available, and disable building
libpq++ if not.I would like to see one other user with the problem first.
Frank's problem was that he had only installed the runtime RPM for
libstdc++, not the devel RPM. Do you think he's the only such user?
(Especially considering that he said he was running a stock Mandrake
distro...)Anyway, the fix is already committed, and it's the least of the
damage I've done today. Amazing how permissive Marc gets when a bug
is biting him personally ;-). Do you want to argue for putting off
the release date so we can get more testing on these fixes?
I say shoot it out the door. It is not like 7.0.0 is going to be
perfect and we aren't going to need a 7.0.1.
--
Bruce Momjian | http://www.op.net/~candle
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Bruce Momjian <pgman@candle.pha.pa.us> writes:
Anyway, the fix is already committed, and it's the least of the
damage I've done today. Amazing how permissive Marc gets when a bug
is biting him personally ;-). Do you want to argue for putting off
the release date so we can get more testing on these fixes?
I say shoot it out the door. It is not like 7.0.0 is going to be
perfect and we aren't going to need a 7.0.1.
There is that. There will *always* be one more bug ;-). Unless we
see another showstopper-class bug report between now and Monday,
I'd be happy with release on Monday.
regards, tom lane
Peter Eisentraut <e99re41@DoCS.UU.SE> writes:
Also, the current configure run will fail if you
don't have a C++ compiler at all.Fail completely?
I'm not going to try to prove this now by uninstalling all my compilers
but this is a known deficiency in autoconf.
Well, what it appears to be is autoconf espousing the same "fail hard"
philosophy that you were just claiming was a good thing ;-). If you ask
it for AC_PROG_CXX and it can't find any working C++ compiler, it gives
up. I have just checked the behavior with no C++ compiler nor gcc in
the PATH, and our configure script will complete if you specify
--without-CXX, but not otherwise.
Definitely seems like a good idea to change to a default of --without-CXX
for 7.1. Is there anyone out there who wants to argue against it?
regards, tom lane
Import Notes
Reply to msg id not found: Pine.GSO.4.02A.10005051049180.18780-100000@Gepard.DoCS.UU.SEReference msg id not found: Pine.GSO.4.02A.10005051049180.18780-100000@Gepard.DoCS.UU.SE | Resolved by subject fallback