Code Monkey home page Code Monkey logo

bazo_android-port's Introduction

bazo_client-android

Prerequisites

In order to build the binaries for the android platform one needs to have the arm compiler for the android platform as well as the golang runtime.

Build instructions

Building the toolchain

Please follow the official documentation on how to obtain a toolchain for ndk development.

Cross-compiling the actual applications

Now, setup your go environment so that the newly created compiler is used. The following command shows how the compilation is configured and started. Navigate to the projects source code and run:

CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 \
CC=<path to your ndk toolchain>/bin/clang go build .

Deploying the binaries

In order to run the compiled binaries on a compatible arm-device running android the following possibilities exist:

  • Use adb push to copy the files to an android device. Use adb shell to open a new shell and then run-as to run the binaries in the scope of an existing application.

  • Copy the files to a rooted android phone and run them directly

  • Place the binaries in the assets folder of an android application. At runtime, let the application copy the files to /data/<app> and run them.

Running the binaries

Run the binaries as usual. The following commands show how the binaries can be run with the supplied sample setup. This setup consists of two non-root users and a root account. All accounts have >100 Bazo coins of Funds at the beginning.

./bin/bazo_miner-android-armv5 ./sample-setup/database :8000 > miner.log &
./bin/bazo_client-android-armv5 &

If the binaries are required for running the Bazo Wallet or other applications that depend on a secure context, a secure tunnel is necessary. ngrok can be used to create a secure connection and provides an ARMv5 binary suitable for most android devices:

./ngrok http 8001

bazo_android-port's People

Contributors

jvdassen avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.