RethinkDB for i586

时间:2016-03-06 18:18:35

标签: cross-compiling intel rethinkdb intel-galileo

我想知道是否有针对i586架构的RethinkDB软件包,还是有人知道如何为i586交叉编译它?

我有一个英特尔Galileo Gen 2主板并尝试在其上编译RethinkDB,但它需要永远,所以我想我可以在我的主计算机上完成它。

我的主机正在运行Xubuntu 15.04,带有i7。

英特尔Galileo正在运行Yocto,而且是i586。

所以我希望在我的主机上为Intel Galileo构建RethinkDB。如果我无法对其进行交叉编译,是否有人知道如何在我的主计算机上模拟i586?

2 个答案:

答案 0 :(得分:0)

这不是本身的答案,而是我决定做的事情!

我决定不在Galileo-board上安装RethinkDB服务器,而只是在其他服务器上运行服务器并连接到它。看到表演会很有趣,但我没有时间尝试让它发挥作用。

很抱歉,这不是一个真正的答案。

答案 1 :(得分:0)

amd64 Ubuntu只需要安装几个软件包来构建i386二进制文件。我认为安装gcc-multilib可以帮助您获得所需的大部分内容。您可能还需要安装一些pkgname:i386库。

您并不需要通常所谓的“交叉编译”设置,因为标准/usr/bin/gcc可以使i586二进制文件具有正确的选项。 -m32的默认值为i686:即它使用cmov指令,该指令已在P6(PPro)中添加。

配置构建以将-m32 -march=i586作为编译器选项传递。 -m32可能也必须是链接器选项,如果某些构建命令使用其他需要不同选项的命令来指定32位ELF二进制文件的操作,则它们可能会失败。

假设您的软件包使用标准的autoconf设置,

i586='-m32 -march=i586'
CFLAGS=$i586 LDFLAGS=$i586 CXXFLAGS=$i586 ./configure
make -j$(getconf _NPROCESSORS_ONLN)

就像人们评论的那样,你可能想要构建静态库。