若要在 Biarch 体系结构上为其他体系结构开发二进制代码,则必须另外安装用于第二个体系结构的各个库。 这些包称为 rpmname-32bit。 您还需要 rpmname-devel 包中各自的标题和库以及 rpmname-devel-32bit 中用于第二个体系结构的开发库。
大多数开放源代码程序使用基于 autoconf 的程序配置。 若要使用 autoconf 配置第二个体系结构的程序,请通过运行带有附加环境变量的 configure 脚本覆盖 autoconf 的常规编译器和链接器设置。
以下示例涉及 x86 为第二个体系结构的 x86_64 系统。
使用 32 位编译器:
CC="gcc -m32"
指示链接器处理 32 位对象(总是使用 gcc 作为链接器前端):
LD="gcc -m32"
设置组装器生成 32 位对象:
AS="gcc -c -m32"
指定链接器标志,如 32 位库的位置,例如:
LDFLAGS="-L/usr/lib"
指定 32 位对象代码库的位置:
--libdir=/usr/lib
指定 32 位 X 库的位置:
--x-libraries=/usr/lib
并不是每个程序都需要这些变量。 根据各个程序对这些变量进行调整。
CC="gcc -m32" LDFLAGS="-L/usr/lib;" ./configure --prefix=/usr --libdir=/usr/lib --x-libraries=/usr/lib make make install