简体   繁体   English

为Raspberry Pi交叉编译rethinkdb

[英]Cross compiling rethinkdb for Raspberry Pi

Currently running Ubuntu 14.04 x86_64. 目前正在运行Ubuntu 14.04 x86_64。 I want to cross compile rethinkdb for my RPi for experimental purposes, which is supported in 1.12 (and people have apparently successfully compiled). 我想为我的RPi交叉编译rethinkdb用于实验目的,这在1.12中得到支持(人们显然已成功编译)。

I have installed the toolchain: 我已经安装了工具链:

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

Configuration runs: 配置运行:

./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

However make fails, 然而make失败,

/bin/bash: ccache: command not found

Any pointers to getting this working? 任何指向这个工作的指针?

Any pointers to getting this working? 任何指向这个工作的指针?

Just install ccache. 只需安装ccache即可。 It would be helpful even if you did not have this issue because it somewhat speeds the compilation up on embedded. 即使您没有遇到此问题也会有所帮助,因为它有点加快了嵌入式编译的速度。 We are also using it at the company, fwiw, even with icecream, eventually. 我们也在公司,fwiw,甚至冰淇淋,最终使用它。

sudo apt-get install ccache

The actual state of cross compiling rethinkdb for raspberry-pi is complicated right now. 现在,为raspberry-pi交叉编译rethinkdb的实际状态很复杂。 It seems that this is not actively maintained and it became complicated to set it up over the years. 似乎这并没有得到积极维护,多年来设置起来变得复杂。 This is however possible with a little bit of effort. 然而,这可以通过一点点努力来实现。 It requires dwelving into the rethinkdb build framework based on good ol' makefiles... 它需要基于良好的'makefile'来进入rethinkdb构建框架...

You can find an attempt at doing so here in a Dockerfile. 你可以找到这样的尝试这里的Dockerfile。 It basically creates a Docker container with all the dependencies (especially the cross compiler), modify the config and build rethinkdb. 它基本上创建了一个包含所有依赖项的Docker容器(尤其是交叉编译器),修改配置并构建rethinkdb。 The outcome is the rethinkdb package for raspberry. 结果是覆盆子的rethinkdb包。

You can either use it as is or have a look to it and reproduce it on your own. 您可以按原样使用它,也可以查看它并自行重现。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM