Thread: Errors building older versions of PostgreSQL
I've been going through some old backups, and found databases from pgsql versions as old as 7.0 (7.0, 7.1, 7.3, and 7.4 to be precise). I'm trying to build these older versions specifically so I can dump the data and see what I want to keep and what I can erase. 7.3 and 7.4 appear to have built cleanly and easily (I'd expect that for 7.4). However, 7.0 and 7.1 are giving me grief. I'm building this on a fresh SuSE 9.3 system. The 7.0 is being configured with: ./configure --prefix=/export/storage/PostgreSQL/7.0 --pgport=5433 It gets through most of the make process, but then at the point where it starts creating files like GNUmakefile, it returns: sed: file conftest.sl line 35: unterminated `s' command The GNUmakefile is 0 bytes, and it says config.h is unchanged. I forget how many files (or times) this message is generated, but the end result is there's nothing to make. Second problem, this time is for 7.1. 7.1 is configured with: ./configure --prefix=/export/storage/PostgreSQL/7.1 --pgport=5434 It doesn't get as far as 7.0, but it does get to: Checking types of arguments for accept() . . . where it then says: Cannot determine argument types and aborts the configure process. I've found the 7.1 problem (but no solutions so far) in google when building for Solaris 9. I was hoping someone here could point me in a good direction to solve these problems. I'd really like to extract the data from these older databases. I don't need to get these fully running, just enough to get pg_dump to work. Thanks, Greg
On Wed, Jul 13, 2005 at 04:29:41PM -0700, Gregory Youngblood wrote: > It gets through most of the make process, but then at the point where > it starts creating files like GNUmakefile, it returns: > sed: file conftest.sl line 35: unterminated `s' command The problem is that GCC now gives a multiline string when given --version. I think the easiest way out is to change the configure file, where it says CC_VERSION=`${CC} --version` to something like CC_VERSION=`${CC} --version | head -1` (Or change configure.in and rerun autoconf) > Second problem, this time is for 7.1. > > 7.1 is configured with: > ./configure --prefix=/export/storage/PostgreSQL/7.1 --pgport=5434 > > It doesn't get as far as 7.0, but it does get to: > Checking types of arguments for accept() . . . I think the easiest would be to take the config/ac_func_accept_argtypes.m4 file from a newer release, rerun autoconf, and rerun configure. -- Alvaro Herrera (<alvherre[a]alvh.no-ip.org>) "In fact, the basic problem with Perl 5's subroutines is that they're not crufty enough, so the cruft leaks out into user-defined code instead, by the Conservation of Cruft Principle." (Larry Wall, Apocalypse 6)
Thanks for the tips. It kind of worked. I got passed that point, but then got to another set of errors. I'm going to change my approach. I'm trying to locate some older Linux ISOs that I can install in a vmware virtual environment and try to build in there. Since all I want is to dump my data, I don't really have that much of a worry about long-term performance within a virtualized system. We'll see how it goes. So far finding older ISOs has been more difficult than I expected. It appears no one is seriously keeping an archive of old Linux distros. This is too bad, because it can be non- trivial to get older versions of software working on newer distros, and that means data gathering dust in offline backups might not be recoverable, especially if it is just data backups and not entire systems (like I happen to be dealing with). If this avenue fails, I'll post back with actual error messages. I do appreciate your assistance. Thanks, Greg On Jul 13, 2005, at 7:58 PM, Alvaro Herrera wrote: > On Wed, Jul 13, 2005 at 04:29:41PM -0700, Gregory Youngblood wrote: > > >> It gets through most of the make process, but then at the point where >> it starts creating files like GNUmakefile, it returns: >> sed: file conftest.sl line 35: unterminated `s' command >> > > The problem is that GCC now gives a multiline string when given > --version. I think the easiest way out is to change the configure > file, > where it says > > CC_VERSION=`${CC} --version` > > to something like > > CC_VERSION=`${CC} --version | head -1` > > (Or change configure.in and rerun autoconf) > > >> Second problem, this time is for 7.1. >> >> 7.1 is configured with: >> ./configure --prefix=/export/storage/PostgreSQL/7.1 --pgport=5434 >> >> It doesn't get as far as 7.0, but it does get to: >> Checking types of arguments for accept() . . . >> > > I think the easiest would be to take the > config/ac_func_accept_argtypes.m4 file from a newer release, rerun > autoconf, and rerun configure. > > -- > Alvaro Herrera (<alvherre[a]alvh.no-ip.org>) > "In fact, the basic problem with Perl 5's subroutines is that > they're not > crufty enough, so the cruft leaks out into user-defined code > instead, by > the Conservation of Cruft Principle." (Larry Wall, Apocalypse 6) > > ---------------------------(end of > broadcast)--------------------------- > TIP 5: don't forget to increase your free space map settings >