How can I build an old application for 64bit?

1

I am trying to build postgresql 7.4.6 on a 64bit machine for 64bit. I'm not sure whether this code is 64bit compatible. Is there a way to check?

If it is 64bit compatible, do I need to do anything to make sure it builds in 64bit?

The source code is from ftp://ftp-archives.postgresql.org/pub/source/v7.4.6/postgresql-7.4.6.tar.gz

Thanks

barrrista

Posted 2012-02-25T01:56:15.220

Reputation: 1 519

What's happening when you try to build it? – Ƭᴇcʜιᴇ007 – 2012-02-25T06:42:48.580

Answers

3

According to this historical Gentoo ebuild, postgresql 7.4.6 was considered stable in Gentoo on x86, sparc, alpha, hppa and amd64 architectures. (I assume you aren't talking about IA-64.)

The same ebuild makes provisions for some patching for hppa architecture, and always applies this patch, which appears to remove some termcap linking problem and change how the server is started and stopped. There does not seem to be any special considerations for amd64 at all.

In conclusion, it does not seem you should have any trouble building and running this, provided you have all the required libraries and headers available.

Eroen

Posted 2012-02-25T01:56:15.220

Reputation: 5 615

Thanks for your response. I was able to complete the build for x86_64. I was wondering how were able to conclude from this script that the postgresql 7.4.6 was considered stable on all those architectures? Does "stable" mean they were able to build for those architectures without errors, or does it mean they actually tested out postgresql on each architecture and ensured it could run? – barrrista – 2012-02-27T23:09:04.693

There's a line starting with KEYWORDS= that lists stable architectures, like x86 and sparc, and unstable ones with a tilde, like ~ppc and ~ia64. – Eroen – 2012-02-27T23:15:14.187

To give the reason behind my question, I wanted to know if I can go to any ebuild build map for any linux flavor and know that if someone built it before, that means it is "stable". I noticed the KEYWORDS= section, just not sure why an example of an ebuild script means it is "stable" and what "stable" means. – barrrista – 2012-02-27T23:20:54.240

1

In Gentoo, a stable release is one that is suggested for production use and somebody claims to have used it for a time, while unstable generally means it seems to work. However, I just noticed this bug, it might help if you build it with frame pointers. However, building an application from many years past could be difficult if you are on a modern system, as many libraries change over time and you generally only have the lower bounds on what versions work. You might get something out of your build log, though.

– Eroen – 2012-02-27T23:26:19.570

1Remember that it was stable with the rest of a then-stable system 7 years ago, not with an up-to-date system today. – Eroen – 2012-02-27T23:28:26.057

Just curious, how were you able to find this build? Were you able to search from google or did you correctly guess that Gentoo may have a build? I have other applications I need to update to 64bit and was wondering if I'd be able to replicate your search and find successful releases across any linux flavor. – barrrista – 2012-02-27T23:46:41.713

1

The complete tree can be found here, with a link on top ("dead files") to hide or show files that have been deleted. AFAIK the other large distros don't have similar information easily available on how their builds were done.

– Eroen – 2012-02-28T07:55:20.813