Description of problem: rpmbuild macro %{_sysconfdir} points to /usr/etc because rpm looks for /usr/lib/rpm/ia32e-linux/macros Version-Release number of selected component (if applicable): rpm-4.3.3-13_nonptl rpm-build-4.3.3-13_nonptl How reproducible: always, try to rebuild a src rpm with this macro or: # rpm --eval %{_sysconfdir} /usr/etc Steps to Reproduce: 1. # rpm --eval %{_sysconfdir} 2. /usr/etc 3. Actual results: Expected results: /etc Additional info: The macro %{_sysconfdir} is defined in a couple of files under /usr/lib/rpm/ always with the filename macros But here on the 64bit version it tries to open: open("/usr/lib/rpm/ia32e-linux/macros", O_RDONLY) = -1 ENOENT (No such file or directory) so the wrong path /usr/etc from /usr/lib/rpm/macros is used. I did an strace: # grep macros strace_rpm open("/usr/lib/rpm/macros", O_RDONLY) = 3 read(3, "#/*! \\page config_macros Default"..., 8192) = 8192 open("/usr/lib/rpm/ia32e-linux/macros", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/rpm/macros.jpackage", O_RDONLY) = 3 read(3, "#\n# RPM macros for Java applicat"..., 8192) = 6657 open("/etc/rpm/macros.prelink", O_RDONLY) = 3 open("/etc/rpm/macros.solve", O_RDONLY) = 3 open("/etc/rpm/macros.specspo", O_RDONLY) = 3 open("/etc/rpm/macros.up2date", O_RDONLY) = 3 open("/etc/rpm/macros", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/rpm/ia32e-linux/macros", O_RDONLY) = -1 ENOENT (No such file or directory) stat("/root/.rpmmacros", 0x7fbfffe180) = -1 ENOENT (No such file or directory)
The %{_sysconfdir} macro is overridden by per-platform macros -14: _sysconfdir /etc Edit /etc/rpm/platform, and change "ia32e" to "x86_64" is one fix. Otherwise ln -s x86_64-linux /usr/lib/rpm/ia32e-linux
The symlink was what I thought of, too. I did: ln -s /usr/lib/rpm/x86_64-linux/ /usr/lib/rpm/ia32e-linux and now it works: # rpm --eval %{_sysconfdir} /etc Thx Rainer
This bug is likely fixed (by setting arch as "x86_64" from --target) in rpm-4.4.7-0.15. UPSTREAM
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2007-0315.html