Bug 166665
Summary: | Pre-existing installation confuses RPM build | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Philippe Rigault <prigault> |
Component: | postgresql | Assignee: | Tom Lane <tgl> |
Status: | CLOSED ERRATA | QA Contact: | David Lawrence <dkl> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 3 | CC: | hhorak |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2005-10-04 23:19:14 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Philippe Rigault
2005-08-24 14:20:56 UTC
rpmbuild does not need to be run as root; certainly no one at Red Hat does so. I don't think this is a bug. Thank you very much for the rapid answer. I stand corrected with regards to using rpmbuild from user space, and doing so succesfully completes the process. I agree therefore with your NOTABUG resolution. However, I noticed one other problem. The FC3 system I use for rpmbuild has postgres-{libs,devel}-7.4.8-1.FC3.1 installed, and the postgresql-tcl package produced by rpmbuild (of the 8.0.3 src.rpm) ends up requiring this old installed version of libpq (libpq.so.3) rather than the one (libpg.so.4) just built during rpmbuild. As a consequence, it is not possible to build (from src.rpm) and upgrade postgresql packages in one shot: $ rpm -Fvh RPMS/x86_64/postgres*.rpm error: Failed dependencies: libpq.so.3()(64bit) is needed by postgresql-tcl-8.0.3-2.x86_64 $ rpm -qa|grep postgresql|sort postgresql-7.4.8-1.FC3.1 postgresql-contrib-7.4.8-1.FC3.1 postgresql-devel-7.4.8-1.FC3.1 postgresql-docs-7.4.8-1.FC3.1 postgresql-jdbc-7.4.8-1.FC3.1 postgresql-libs-7.4.8-1.FC3.1 postgresql-odbc-7.3-8.FC3.1 postgresql-pl-7.4.8-1.FC3.1 postgresql-python-7.4.8-1.FC3.1 postgresql-server-7.4.8-1.FC3.1 postgresql-tcl-7.4.8-1.FC3.1 postgresql-test-7.4.8-1.FC3.1 $ ls RPMS/x86_64/postgres* RPMS/x86_64/postgresql-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-contrib-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-debuginfo-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-devel-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-docs-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-jdbc-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-libs-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-pl-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-python-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-server-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-tcl-8.0.3-2.x86_64.rpm RPMS/x86_64/postgresql-test-8.0.3-2.x86_64.rpm (I bumped the release to 2 to distinguish it from FC4's true RPMs) $ rpm -qp --requires RPMS/x86_64/postgresql-tcl-8.0.3-2.x86_64.rpm libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libdl.so.2()(64bit) libm.so.6()(64bit) libpq.so libpq.so.3()(64bit) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 tcl >= 8.3 The postgresql-tcl-8.0.3-1.x86_64.rpm distributed in FC4 correctly requires libpq.so.4. I suspect it required postgresql-{libs,devel}-8.0 to be installed _prior_ to do rpmbuild. I know that one solution would be to 1. remove postgresql-tcl 2. upgrade postgresql-{libs,devel}-8.0.3 3. rebuild postgresql rpms to create postgresql-tcl that links with correct libpq 4. upgrade postgresql-tcl but that is sub-standard, to say the least. It should be possible to force postgresql-tcl to link with the libraries built during the same rpmbuild. Cheers, Philippe Hmm. I believe that Postgres isn't installed at all on our build machines, which may explain why the distributed RPMs are OK. But I've not noticed this effect in my own personal builds. Maybe it occurs only on x86_64? Well, the reason I hadn't noticed it is I don't generally build with a different version of Postgres already installed :-(. It's definitely broken. There's a fix in postgresql-8.0.4-2.FC4.1. |