如何从64位的arch服务器创build32位的arch的RPM?

我们的生产服务器运行CentOS5 64位拱。

由于目前没有可用于SQLite最新版本(v3.7.3)的RPM,因此我首次使用rpmbuild创build了RPM,请遵循此处给出的说明。 我能够成功地创build64位(x86_64)体系结构的RPM。 但是我无法为32位(i386)架构创​​buildRPM。 它失败,出现以下错误:

... ... ... + ./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 --enable-threadsafe checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for style of include used by make... GNU checking for x86_64-redhat-linux-gnu-gcc... no checking for gcc... gcc checking for C compiler default output file name... configure: error: C compiler cannot create executables See `config.log' for more details. error: Bad exit status from /var/tmp/rpm-tmp.73141 (%build) RPM build errors: Bad exit status from /var/tmp/rpm-tmp.73141 (%build) 

这是我调用的命令: rpmbuild --target i386 -ba sqlite.spec

我的问题是,如何从64位的arch服务器为32位的arch创buildRPM?

 mock -r fedora-14-i386 --rebuild foo.srpm 

当你告诉它使用一个32位的root时, mock将在x86-64系统上执行x86构build。

安装缺less的32位库:

 $ sudo yum install glibc-devel.i386