-
Notifications
You must be signed in to change notification settings - Fork 38.8k
Add armhf/aarch64 gitian builds #8188
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Started a gitian build: https://bitcoin.jonasschnelli.ch/pulls/8188/ |
- create a script to handle split debug. This will also eventually need to check targets, and use dsymutil for osx. - update config.guess/config.sub for bdb for aarch64. - temporarily disable symbol checks for arm/aarch64 - quit renaming to linux32/linux64 and use the host directly This also adds a hack to work around an Ubuntu bug in the gcc-multilib package: https://bugs.launchpad.net/ubuntu/+source/gcc-defaults-armhf-cross/+bug/1347820 The problem is that gcc-multilib conflicts with the aarch toolchain. gcc-multilib installs a symlink that points /usr/include/asm -> /usr/include/x86_64-linux-gnu/asm. Without this link, gcc -m32 can't find asm/errno.h (and others), since /usr/include/x86_64-linux-gnu isn't in its default include path. But /usr/include/i386-linux-gnu is (though it doesn't exist on disk). So work around the problem by linking /usr/include/i386-linux-gnu/asm -> /usr/include/x86_64-linux-gnu/asm. The symlink fix is actually quite reasonable, but echoing the password into sudo is nasty, and should probably be addressed in gitian itself. It makes more sense to enable passwordless sudo for the build user by default.
|
Going to test this. |
|
Sorry, looks like something is going wrong here locally. Probably a descriptor/tree mismatch. |
|
Hmm, I don't see how this is avoiding building Qt? (I haven't tried, just looking at the code changes) |
|
ACK 9d25362
|
|
Tested ACK 9d25362 (AARCH only). https://bitcoin.jonasschnelli.ch/pulls/8188/bitcoin-linux-0.13-build.assert Successfully ran |
|
Concept ACK |
|
odroid64 testnet node synced to height 869998 over the weekend. All seems to work fine. No apparent difference in behavior or performance from natively-built. |
Mention ARM executables in the release process documentation (these were introduced in bitcoin#8188). As well as that Linux tarballs have changed name to contain an architecture tuple, instead of `linux32`/`linux64`. Also mention that `-debug` files should not be uploaded (these were introduced in bitcoin#8167).
Mention ARM executables in the release process documentation (these were introduced in bitcoin#8188). As well as that Linux tarballs have changed name to contain an architecture tuple, instead of `linux32`/`linux64`. Also mention that `-debug` files should not be uploaded (these were introduced in bitcoin#8167).
This hack is described in bitcoin#8188. The current implementation was introduced in bitcoin#8315.
This hack is described in bitcoin#8188. The current implementation was introduced in bitcoin#8315.
33a84e8 build: Update and sort package list in gitian-linux.yml (Hennadii Stepanov) 9505168 build: Drop old hack which is unneeded now (Hennadii Stepanov) Pull request description: The hack was aimed to fix an issue in Ubuntu Trusty 14.04 (see #8188). The current hack implementation was added in #8315. On master (8db2334) this hack is effectively noop, and it is no longer needed. I see this PR as a step to removing `libfaketime` from gitian builds. ACKs for top commit: dongcarl: tACK 33a84e8 laanwj: Code review ACK 33a84e8 Tree-SHA512: 90036c555a500649ccc3d108bf11f09a9cfd2c92c0b598f7e0c0df63a713ae7abaf78f350b68c025470619c967223f45f6a235ad37a6ce1d1a0341ed34963ba0
33a84e8 build: Update and sort package list in gitian-linux.yml (Hennadii Stepanov) 9505168 build: Drop old hack which is unneeded now (Hennadii Stepanov) Pull request description: The hack was aimed to fix an issue in Ubuntu Trusty 14.04 (see bitcoin#8188). The current hack implementation was added in bitcoin#8315. On master (8db2334) this hack is effectively noop, and it is no longer needed. I see this PR as a step to removing `libfaketime` from gitian builds. ACKs for top commit: dongcarl: tACK 33a84e8 laanwj: Code review ACK 33a84e8 Tree-SHA512: 90036c555a500649ccc3d108bf11f09a9cfd2c92c0b598f7e0c0df63a713ae7abaf78f350b68c025470619c967223f45f6a235ad37a6ce1d1a0341ed34963ba0
As discussed in yesterday's IRC meeting.
Please see the individual commit messages for more detailed info and caveats. Also note: