本番サーバーはCentOS564ビットArchを実行しています。
現在SQLite最新バージョン(v3.7.3)で使用できるRPMがないため、最初にrpmbuildを使用してRPMを作成しました。 ここ 。 64ビット(x86_64)アーキテクチャ用のRPMを正常に作成できました。ただし、32ビット(i386)アーキテクチャ用のRPMを作成することはできません。次のエラーで失敗しました。
...
...
...
+ ./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のRPMを作成するにはどうすればよいですか?
mock -r Fedora-14-i386 --rebuild foo.srpm
mock
は、32ビットルートを使用するように指示すると、x86-64システムでx86ビルドを実行します。
不足している32ビットライブラリをインストールします。
$ Sudo yum install glibc-devel.i386