From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.7) Gecko/20050421 Red Hat/1.0.3-1.4.1.centos4 Firefox/1.0.3 Description of problem: When the x86_64 release of RHEL4 is installed on an Opteron box, all is fine. rpmbuild looks for macros under /usr/lib/rpm/x86_64-linux/macros # rpmbuild --showrc | grep ^macrofiles macrofiles : /usr/lib/rpm/macros:/usr/lib/rpm/x86_64-linux/macros:/etc/rpm/macros.*:/etc/rpm/macros:/etc/rpm/x86_64-linux/macros:~/.rpmmacros However, when installed on a Xeon EM64T box, rpm looks in the wrong place # rpmbuild --showrc | grep ^macrofiles macrofiles : /usr/lib/rpm/macros:/usr/lib/rpm/ia32e-linux/macros:/etc/rpm/macros.*:/etc/rpm/macros:/etc/rpm/ia32e-linux/macros:~/.rpmmacros /usr/lib/rpm/ia32e-linux/macros does not exist and if someone uses rpmbuild things like %_sysconfdir will be /usr/etc instead of /etc since the macros in /usr/lib/rpm/macros are not overridden Version-Release number of selected component (if applicable): rpm-4.3.3-7_nonptl How reproducible: Always Steps to Reproduce: 1. install x86_64 release of RHEL4 on a Xeon EM64T box 2. use rpmbuild Actual Results: %_sysconfdir was set to /usr/etc Expected Results: %_sysconfdir was set to /etc Additional info: Workaround is to do: ln -s x86_64-linux /usr/lib/rpm/ia32e-linux
For rpm configuration purposes, the arch name is "x86_64", not "ia32e". Either create the symlink ln -s x86_64-linux /usr/lib/rpm/ia32e-linux or change the arch in /etc/rpm/platform.