Обсуждение: 8.2 Admin Pack broken?

Поиск
Список
Период
Сортировка

8.2 Admin Pack broken?

От
"Andy Shellam (Mailing Lists)"
Дата:
I'm trying to compile in the "adminpack" into PostgreSQL 8.2.3, but it
doesn't want to build.

According to the instructions, I change into "contrib/adminpack" and run
"make" followed by "make install."

However, make fails:

[NetServe@byron
/endeavour/software/cache/postgresql-8.2.3/contrib/adminpack]$ make
"Makefile", line 8: Need an operator
"Makefile", line 10: Could not find
"Makefile", line 11: Need an operator
"../../src/Makefile.global", line 38: Missing dependency operator
"../../src/Makefile.global", line 41: Need an operator

--8<--   lots more of the above line    --8<--

"../../src/Makefile.global", line 109: Missing dependency operator
"../../src/Makefile.global", line 110: Need an operator

--8<--   lots more of the above 2 lines    --8<--

"../../src/Makefile.port", line 3: Need an operator
"../../src/Makefile.port", line 12: Missing dependency operator

--8<--   more of the above 2 lines    --8<--

"../../src/Makefile.global", line 324: Missing dependency operator
"../../src/Makefile.global", line 326: Need an operator

--8<--   lots more of the above 2 lines    --8<--

"/endeavour/software/cache/postgresql-8.2.3/src/../src/nls-global.mk",
line 25: Could not find
/endeavour/software/cache/postgresql-8.2.3/src/../contrib/adminpack/nls.mk
"/endeavour/software/cache/postgresql-8.2.3/src/../src/nls-global.mk",
line 29: Need an operator

--8<--   4 more of the above line    --8<--

Error expanding embedded variable.
[NetServe@byron
/endeavour/software/cache/postgresql-8.2.3/contrib/adminpack]$

This is on FreeBSD 6.1, I've built and installed PostgreSQL 8.2.3
(running nicely) - I have Bison and M4 installed - is there anything
else I need?
The "nls-global.mk" and "nls.mk" files don't exist.

Any help would be appreciated!

Thanks,

Andy.




Re: 8.2 Admin Pack broken?

От
"Andy Shellam (Mailing Lists)"
Дата:
Never mind, I found the problem.

FYI: Reports on Google are wrong - they say that you need to use "gmake"
to build the PostgreSQL server source.  You don't.
I had installed GNU make on FreeBSD, but it installs it under
"/usr/local/bin/make" - of which the Unix version of make exists under
"/usr/bin/make."

Just typing "make" builds PostgreSQL just fine with the Unix make.
However, the contrib modules *won't* build with the Unix make - I had to
run "/usr/local/bin/make" instead of just "make."

HTH someone,

Andy.


Andy Shellam (Mailing Lists) wrote:
> I'm trying to compile in the "adminpack" into PostgreSQL 8.2.3, but it
> doesn't want to build.
>
> According to the instructions, I change into "contrib/adminpack" and
> run "make" followed by "make install."
>
> However, make fails:
>
> [NetServe@byron
> /endeavour/software/cache/postgresql-8.2.3/contrib/adminpack]$ make
> "Makefile", line 8: Need an operator
> "Makefile", line 10: Could not find
> "Makefile", line 11: Need an operator
> "../../src/Makefile.global", line 38: Missing dependency operator
> "../../src/Makefile.global", line 41: Need an operator
>
> --8<--   lots more of the above line    --8<--
>
> "../../src/Makefile.global", line 109: Missing dependency operator
> "../../src/Makefile.global", line 110: Need an operator
>
> --8<--   lots more of the above 2 lines    --8<--
>
> "../../src/Makefile.port", line 3: Need an operator
> "../../src/Makefile.port", line 12: Missing dependency operator
>
> --8<--   more of the above 2 lines    --8<--
>
> "../../src/Makefile.global", line 324: Missing dependency operator
> "../../src/Makefile.global", line 326: Need an operator
>
> --8<--   lots more of the above 2 lines    --8<--
>
> "/endeavour/software/cache/postgresql-8.2.3/src/../src/nls-global.mk",
> line 25: Could not find
> /endeavour/software/cache/postgresql-8.2.3/src/../contrib/adminpack/nls.mk
>
> "/endeavour/software/cache/postgresql-8.2.3/src/../src/nls-global.mk",
> line 29: Need an operator
>
> --8<--   4 more of the above line    --8<--
>
> Error expanding embedded variable.
> [NetServe@byron
> /endeavour/software/cache/postgresql-8.2.3/contrib/adminpack]$
>
> This is on FreeBSD 6.1, I've built and installed PostgreSQL 8.2.3
> (running nicely) - I have Bison and M4 installed - is there anything
> else I need?
> The "nls-global.mk" and "nls.mk" files don't exist.
>
> Any help would be appreciated!
>
> Thanks,
>
> Andy.
>
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 7: You can help support the PostgreSQL project by donating at
>
>                http://www.postgresql.org/about/donate
>
> !DSPAM:37,45d70d9518515637015809!
>
>


--
Andy Shellam
NetServe Support Team

the Mail Network
"an alternative in a standardised world"

p: +44 (0) 121 288 0832/0839
m: +44 (0) 7818 000834


Re: 8.2 Admin Pack broken?

От
Tom Lane
Дата:
"Andy Shellam (Mailing Lists)" <andy.shellam-lists@mailnetwork.co.uk> writes:
> FYI: Reports on Google are wrong - they say that you need to use "gmake"
> to build the PostgreSQL server source.  You don't.

I can assure you that you need GNU make to build any part of Postgres.
Perhaps what you're dealing with there is that "/usr/bin/make" is some
particularly ancient release of GNU make that has most but not quite all
of the features we depend on?  "make -v" might prove informative.

            regards, tom lane

Re: 8.2 Admin Pack broken?

От
"Andy Shellam (Mailing Lists)"
Дата:
Tom Lane wrote:
"Andy Shellam (Mailing Lists)" <andy.shellam-lists@mailnetwork.co.uk> writes: 
FYI: Reports on Google are wrong - they say that you need to use "gmake" 
to build the PostgreSQL server source.  You don't.   
I can assure you that you need GNU make to build any part of Postgres.
Perhaps what you're dealing with there is that "/usr/bin/make" is some
particularly ancient release of GNU make that has most but not quite all
of the features we depend on?  "make -v" might prove informative. 

Not particularly!! Don't know what it is but it doesn't _appear_ to be GNU.  According to "man make" it is a "FreeBSD General Command."
I can tell you that "./configure && make && make install" works and builds a working Postgres server just fine, it's just the contribs it doesn't build.

[root@byron ~]# make -v
make: no target to make.

[root@byron ~]# /usr/bin/make -v
make: no target to make.

[root@byron ~]# /usr/local/bin/make -v
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for i386-unknown-freebsd6.1
[root@byron ~]#

Confusion reigns.

Re: 8.2 Admin Pack broken?

От
Peter Eisentraut
Дата:
Andy Shellam (Mailing Lists) wrote:
> Not particularly!! Don't know what it is but it doesn't _appear_ to
> be GNU.  According to "man make" it is a "FreeBSD General Command." I
> can tell you that "./configure && make && make install" works and
> builds a working Postgres server just fine, it's just the contribs it
> doesn't build.

There is extra code in the top-level makefile that detects if you don't
run GNU make, tries to find it, and calls it instead.  But you need to
have it installed somewhere.  That code, however, is not replicated in
each directory of the source tree.

In the past, we have usually refered to the GNU make program as "gmake",
but I see an increasing number of systems, including my own, that no
longer installs GNU make as "gmake" but only as "make".  So basically
you just need to be careful what you call.

--
Peter Eisentraut
http://developer.postgresql.org/~petere/

Re: 8.2 Admin Pack broken?

От
"Andy Shellam (Mailing Lists)"
Дата:
Peter Eisentraut wrote:
Andy Shellam (Mailing Lists) wrote: 
Not particularly!! Don't know what it is but it doesn't _appear_ to
be GNU.  According to "man make" it is a "FreeBSD General Command." I
can tell you that "./configure && make && make install" works and
builds a working Postgres server just fine, it's just the contribs it
doesn't build.   
There is extra code in the top-level makefile that detects if you don't 
run GNU make, tries to find it, and calls it instead.  But you need to 
have it installed somewhere.  That code, however, is not replicated in 
each directory of the source tree.

In the past, we have usually refered to the GNU make program as "gmake", 
but I see an increasing number of systems, including my own, that no 
longer installs GNU make as "gmake" but only as "make".  So basically 
you just need to be careful what you call.
 

Ah that provides an explanation, thanks Peter!  I installed GNU make before trying to build Postgres as there was another program I needed it for, so I never crossed this problem while building Postgres.
Yes, regarding make, I've noticed that all GNU stuff I've compiled on FreeBSD gets installed into /usr/local/ by default, which keeps it separate from the system programs in /usr.

HTH

Andy