为Raspberry Pi交叉编译rethinkdb

时间:2014-04-19 15:41:02

标签: c++ raspberry-pi cross-compiling rethinkdb

目前正在运行Ubuntu 14.04 x86_64。我想为我的RPi交叉编译rethinkdb用于实验目的,这在1.12中得到支持(人们显然已成功编译)。

我已经安装了工具链:

sudo apt-get install g++-4.7-arm-linux-gnueabi gcc-arm-linux-gnueabi

export CXX=/usr/bin/arm-linux-gnueabi-g++-4.7
export CC=/usr/bin/arm-linux-gnueabi-gcc-4.7
export AR=/usr/bin/arm-linux-gnueabi-ar
export LD=/usr/bin/arm-linux-gnueabi-ld

配置运行:

./configure --ccache --allow-fetch --without-tcmalloc
* Detecting system configuration
Bash:                           4.3.8(1)-release
Use ccache:                     yes
C++ Compiler:                   GCC 4.7 (/usr/bin/arm-linux-gnueabi-g++-4.7)
Host System:                    arm-linux-gnueabi
Build System:                   Linux 3.13.0-24-generic x86_64
Cross-compiling:                yes
Host Operating System:          Linux
Without tcmalloc:               yes
Build client drivers:           no
Build Architecture:             x86_64
Precompiled web assets:         no
Protobuf compiler:              /usr/bin/protoc
Node.js package manager:        /usr/bin/npm
LESS css:                       external/less_1.6.2
CoffeeScript:                   external/coffee-script_1.7.1
Handlebars:                     external/handlebars_1.3.0
Browserify:                     external/browserify_3.24.13
ProtoBuf.js:                    external/protobufjs_2.0.4
wget:                           /usr/bin/wget
curl:                           /usr/bin/curl
protobuf:                       external/protobuf_2.5.0
v8:                             external/v8_3.22.24.17
RE2:                            external/re2_20140111
z:                              external/zlib_1.2.8
Google Test:                    external/gtest_1.6.0
termcap:                        no
Test protobuf:                  external/protobuf_2.5.0
Test boost:                     external/boost_1.55.0
Installation prefix:            /usr/local
Configuration prefix:           /usr/local/etc
Runtime data prefix:            /usr/local/var
* Warning: ARM support is still experimental
* Wrote configuration to config.mk

make失败,

/bin/bash: ccache: command not found

有任何指示让这个工作吗?

2 个答案:

答案 0 :(得分:5)

  

有任何指示让这个工作吗?

只需安装ccache即可。即使您没有遇到此问题也会有所帮助,因为它有点加快了嵌入式编译的速度。我们也在公司使用它,fwiw,最后甚至用冰淇淋。

sudo apt-get install ccache

答案 1 :(得分:1)

现在,为raspberry-pi交叉编译rethinkdb的实际状态很复杂。似乎这并没有得到积极维护,多年来设置起来变得复杂。然而,这可以通过一点点努力来实现。它需要基于良好的'makefile ...

进入rethinkdb构建框架

您可以在Dockerfile中找到尝试here的尝试。它基本上创建了一个包含所有依赖项的Docker容器(尤其是交叉编译器),修改配置并构建rethinkdb。结果是覆盆子的rethinkdb包。

您既可以按原样使用,也可以查看并自行复制。