From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.8) Gecko/20050524 Fedora/1.0.4-4 Firefox/1.0.4 Description of problem: When using "rpmbuild --target i386" on a spec file which uses the %configure macro, the macro expands on the x86_64 to pass ./configure an argument of "--libdir=/usr/lib64" When the target platform is any 32 bit arch (i386, i586, i686, athlon, etc.) then the libdir should be set to /usr/lib Version-Release number of selected component (if applicable): rpm-devel-4.4.1-21 How reproducible: Always Steps to Reproduce: 1.Install FC4 x86_64 2.Take any spec file which uses the %configure macro in the %build section 3.Run rpmbuild --target i386 against the spec file and then watch for what the macro expands to Actual Results: ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --target=i386-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info Expected Results: ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --target=i386-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info Additional info:
This is a cross compilation problem. Redefine %configure to taste, the default value for %configure is unlikely to make you happy.
Bug still exists. %_libdir is set according to the contents of /etc/rpm/platform not --target argument.
OTOH bug 233145 has a supposedly fixed package, so closing as a dupe of that even though it's newer. *** This bug has been marked as a duplicate of 233145 ***