Nightly builds are back

Hi all,

The nightly builds for the Raspberry Pi2 are back at https://people.mozilla.org/~fdesre/foxbox/ !

The rust code is built with the docker image at https://hub.docker.com/r/fabricedesre/foxbox-armhf/ (the Dockerfile is at https://github.com/fabricedesre/rustpi2).

To built it yourself, go to your foxbox directory and run:
docker run --name rustpi2_run -v `pwd`:/home/user/dev/source -v $HOME/.cargo:/home/user/.cargo fabricedesre/foxbox-armhf cargopi build

1 Like

Out of curiosity, who’s informed if the nightly builds break?

No automation informs anyone. I have to look at the builds.
That will improve greatly when we’ll have https://github.com/fxbox/foxbox/issues/368 fixed.

In case somebody has an issue during ld. Add these lines in .cargo/config:

[target.armv7-unknown-linux-gnueabihf]
linker = "arm-linux-gnueabihf-gcc"

And that should be in your $HOME/.cargo/config

$PROJECT_HOME/.cargo/config also works for me. Is there any reason it should belong to $HOME/...? (Except the fact that it can be reused for some other projects)

fabrice https://discourse.mozilla-community.org/users/fabrice
April 15

And that should be in your $HOME/.cargo/config

Why is it not possible to have it in foxbox’ .cargo/config and commit
this? Given we already commit this file for our iron fork ?

Julien

The iron fork is there because it’s foxbox specific. The cross-compiling configuration is not. For instance I used to have a different one when I was building my own toolchain, but cargo looks first at pwd/.cargo/config and goes up in the directory chain.

Using .cargo/config is also a good way to override for using local repos
when building.

So if you’re working on taxonomy, then you can put the path to the local
taxonomy repo in the .cargo/config and not have to edit a bunch of other
Cargo.toml files.

Cross-compile results are now displayed on Travis. There is a 5th job that reads BUILD_ENV=-arm_cross_compile. There, we only compile in debug and release mode (unlike the others which are only debug). No further test is performed.

We don’t use the docker image image shown in comment 0, nor we use chroot environment. Everything is currently installed directly in the VM.

So far, no intermittent have been noticed there. Please reach out to me, if you see some.

If you want to know more about what this job does, please refer to: https://github.com/fxbox/foxbox/blob/master/tools/travis-linux-arm_cross_compile.sh