RE: Postgres older version 8.3.7 on ubuntu 14

From: "Vaidyanathaswamy, Anandsaikrishnan" <avaidyanathaswamy(at)corelogic(dot)com>
To: Chapman Flack <chap(at)anastigmatix(dot)net>, Steve Crawford <scrawford(at)pinpointresearch(dot)com>
Cc: "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: RE: Postgres older version 8.3.7 on ubuntu 14
Date: 2018-10-23 17:51:36
Message-ID: BYAPR10MB2934AA15B72EBEFD9353F51BA0F50@BYAPR10MB2934.namprd10.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Thank you so much for your prompt reply,

Background on this, We have postgres same version for the past 12 years with 8.3.7, We are moving to cloud GCP
To start with testing the 8.3.7 on ubuntu 14.04 LTS version, I am finding difficulty in installing the 8.3.7 version, Here is the latest error,

checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking which template to use... linux
checking whether to build with 64-bit integer date/time support... no
checking whether NLS is wanted... no
checking for default port number... 5432
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking if gcc supports -Wdeclaration-after-statement... yes
checking if gcc supports -Wendif-labels... yes
checking if gcc supports -fno-strict-aliasing... yes
checking if gcc supports -fwrapv... yes
configure: using CFLAGS=-O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv
checking whether the C compiler still works... yes
checking how to run the C preprocessor... gcc -E
checking allow thread-safe client libraries... no
checking whether to build with Tcl... no
checking whether to build Perl modules... no
checking whether to build Python modules... no
checking whether to build with GSSAPI support... no
checking whether to build with Kerberos 5 support... no
checking whether to build with PAM support... no
checking whether to build with LDAP support... no
checking whether to build with Bonjour support... no
checking whether to build with OpenSSL support... no
checking for egrep... grep -E
configure: using CPPFLAGS= -D_GNU_SOURCE
configure: using LDFLAGS=
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for ranlib... ranlib
checking for strip... strip
checking whether it is possible to strip libraries... yes
checking for tar... /bin/tar
checking whether ln -s works... yes
checking for gawk... gawk
checking for bison... no
configure: WARNING:
*** Without Bison you will not be able to build PostgreSQL from CVS nor
*** change any of the parser definition files. You can obtain Bison from
*** a GNU mirror site. (If you are using the official distribution of
*** PostgreSQL then you do not need to worry about this, because the Bison
*** output is pre-generated.) To use a different yacc program (possible,
*** but not recommended), set the environment variable YACC before running
*** 'configure'.
checking for flex... no
configure: WARNING:
*** Without Flex you will not be able to build PostgreSQL from CVS or
*** change any of the scanner definition files. You can obtain Flex from
*** a GNU mirror site. (If you are using the official distribution of
*** PostgreSQL then you do not need to worry about this because the Flex
*** output is pre-generated.)
checking for perl... /usr/bin/perl
checking for main in -lm... yes
checking for library containing setproctitle... no
checking for library containing dlopen... -ldl
checking for library containing socket... none required
checking for library containing shl_load... no
checking for library containing getopt_long... none required
checking for library containing crypt... -lcrypt
checking for library containing fdatasync... none required
checking for library containing shmget... none required
checking for -lreadline... no
checking for -ledit... no
configure: error: readline library not found
If you have readline already installed, see config.log for details on the
failure. It is possible the compiler isn't looking in the proper directory.
Use --without-readline to disable readline support.
root(at)postgres83ubuntu:/home/rsa-key-20181011/postgresql-8.3.7# CFLAGS=-fno-aggressive-loop-optimizations ./configure --prefix /usr/local/pgsql
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking which template to use... linux
checking whether to build with 64-bit integer date/time support... no
checking whether NLS is wanted... no
checking for default port number... 5432
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking if gcc supports -Wdeclaration-after-statement... yes
checking if gcc supports -Wendif-labels... yes
checking if gcc supports -fno-strict-aliasing... yes
checking if gcc supports -fwrapv... yes
configure: using CFLAGS=-fno-aggressive-loop-optimizations -Wall -Wmissing-prototypes -Wpointer-arith -Winline -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv
checking whether the C compiler still works... yes
checking how to run the C preprocessor... gcc -E
checking allow thread-safe client libraries... no
checking whether to build with Tcl... no
checking whether to build Perl modules... no
checking whether to build Python modules... no
checking whether to build with GSSAPI support... no
checking whether to build with Kerberos 5 support... no
checking whether to build with PAM support... no
checking whether to build with LDAP support... no
checking whether to build with Bonjour support... no
checking whether to build with OpenSSL support... no
checking for egrep... grep -E
configure: using CPPFLAGS= -D_GNU_SOURCE
configure: using LDFLAGS=
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for ranlib... ranlib
checking for strip... strip
checking whether it is possible to strip libraries... yes
checking for tar... /bin/tar
checking whether ln -s works... yes
checking for gawk... gawk
checking for bison... no
configure: WARNING:
*** Without Bison you will not be able to build PostgreSQL from CVS nor
*** change any of the parser definition files. You can obtain Bison from
*** a GNU mirror site. (If you are using the official distribution of
*** PostgreSQL then you do not need to worry about this, because the Bison
*** output is pre-generated.) To use a different yacc program (possible,
*** but not recommended), set the environment variable YACC before running
*** 'configure'.
checking for flex... no
configure: WARNING:
*** Without Flex you will not be able to build PostgreSQL from CVS or
*** change any of the scanner definition files. You can obtain Flex from
*** a GNU mirror site. (If you are using the official distribution of
*** PostgreSQL then you do not need to worry about this because the Flex
*** output is pre-generated.)
checking for perl... /usr/bin/perl
checking for main in -lm... yes
checking for library containing setproctitle... no
checking for library containing dlopen... -ldl
checking for library containing socket... none required
checking for library containing shl_load... no
checking for library containing getopt_long... none required
checking for library containing crypt... -lcrypt
checking for library containing fdatasync... none required
checking for library containing shmget... none required
checking for -lreadline... no
checking for -ledit... no
configure: error: readline library not found
If you have readline already installed, see config.log for details on the
failure. It is possible the compiler isn't looking in the proper directory.
Use --without-readline to disable readline support.

-----Original Message-----
From: Chapman Flack <chap(at)anastigmatix(dot)net>
Sent: Tuesday, October 23, 2018 10:28 AM
To: Steve Crawford <scrawford(at)pinpointresearch(dot)com>; Vaidyanathaswamy, Anandsaikrishnan <avaidyanathaswamy(at)corelogic(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Postgres older version 8.3.7 on ubuntu 14

[External Content] This message is from an external source. Please exercise caution when opening attachments or links.

On 10/23/18 13:15, Steve Crawford wrote:
> On Tue, Oct 23, 2018 at 10:08 AM Vaidyanathaswamy, Anandsaikrishnan <
> avaidyanathaswamy(at)corelogic(dot)com> wrote:

>> We are not able proceed with the installation manually. I am
>> wondering whether ubuntu 14 is compatible with version 8.3.7
...
> First, I would *strongly* suggest upgrading to a newer version for
> security, performance and support.
>
> But if you insist on compiling, the answer is in your output - it
> isn't finding a compiler. Be sure to install gcc or other compiler.

It would certainly be interesting to know why such an old version is needed. Also, even if it has to be 8.3 for some reason, does it have to be
8.3.7 and not the last maintenance release 8.3.23 ?

I have found that to build 8.3 or 8.2 using modern gcc, it is necessary to add a C flag -fno-aggressive-loop-optimizations

as in

$ CFLAGS=-fno-aggressive-loop-optimizations ./configure

But of course, that comes after the first problem, installing a C compiler in the first place. :)

Alternatively, you can build from the git commit exactly one later than the one tagged REL8_3_23. That commit just adds the extra C flag.

-Chap
******************************************************************************************
This message may contain confidential or proprietary information intended only for the use of the
addressee(s) named above or may contain information that is legally privileged. If you are
not the intended addressee, or the person responsible for delivering it to the intended addressee,
you are hereby notified that reading, disseminating, distributing or copying this message is strictly
prohibited. If you have received this message by mistake, please immediately notify us by
replying to the message and delete the original message and any copies immediately thereafter.

Thank you.
******************************************************************************************
CLLD

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message ScienceMadeEasy poorva shukla 2018-10-23 17:57:13 GOOGLE CODE-IN 2018
Previous Message Chapman Flack 2018-10-23 17:27:30 Re: Postgres older version 8.3.7 on ubuntu 14