With the public testnet coming the current documentation in https://github.com/dantrevino/cross-compiling-stacks-blockchain is not working anymore.
cross build
works. However, the instructions to launch the testnet do not work. The signature of blockstack-core has changed. Using something like blockstack-core bitcoin testnet /tmp/testnet
could maybe work but fails with an error:
thread 'main' panicked at 'assertion failed: `(left == right)`
left: `43497fd7f826957108f4a30fd9cec3aeba79972084e90ead01ea330900000000`,
right: `06226e46111a0b59caaf126043eb5bbf28c34f3a5e332a1fc7b2b73cf188910f`', src/burnchains/bitcoin/spv.rs:219:9
cross building testnet binary like this cross build --manifest-path testnet/Cargo.toml --target arm-unknown-linux-gnueabihf
fails on Ubuntu with :
error: failed to run custom build command for `openssl-sys v0.9.55`
Caused by:
process didn't exit successfully: `/target/debug/build/openssl-sys-e8cd711d05c7237c/build-script-main` (exit code: 101)
--- stdout
cargo:rustc-cfg=const_fn
cargo:rerun-if-env-changed=ARM_UNKNOWN_LINUX_GNUEABIHF_OPENSSL_LIB_DIR
ARM_UNKNOWN_LINUX_GNUEABIHF_OPENSSL_LIB_DIR unset
cargo:rerun-if-env-changed=OPENSSL_LIB_DIR
OPENSSL_LIB_DIR unset
cargo:rerun-if-env-changed=ARM_UNKNOWN_LINUX_GNUEABIHF_OPENSSL_INCLUDE_DIR
ARM_UNKNOWN_LINUX_GNUEABIHF_OPENSSL_INCLUDE_DIR unset
cargo:rerun-if-env-changed=OPENSSL_INCLUDE_DIR
OPENSSL_INCLUDE_DIR unset
cargo:rerun-if-env-changed=ARM_UNKNOWN_LINUX_GNUEABIHF_OPENSSL_DIR
ARM_UNKNOWN_LINUX_GNUEABIHF_OPENSSL_DIR unset
cargo:rerun-if-env-changed=OPENSSL_DIR
OPENSSL_DIR unset
run pkg_config fail: "Cross compilation detected. Use PKG_CONFIG_ALLOW_CROSS=1 to override"
--- stderr
thread 'main' panicked at '
Could not find directory of OpenSSL installation, and this `-sys` crate cannot
proceed without this knowledge. If OpenSSL is installed and this crate had
trouble finding it, you can set the `OPENSSL_DIR` environment variable for the
compilation process.