Giter Site home page Giter Site logo

xbuild's Introduction

xbuild

xbuild is a build tool for rust projects with support for cross compiling and publishing to all major stores. The goal of xbuild is making native app development as easy as web development.

Getting started

Install xbuild:

cargo install xbuild

List connected devices:

x devices
host                                              Linux               linux x64           Arch Linux 5.16.10-arch1-1
adb:16ee50bc                                      FP4                 android arm64       Android 11 (API 30)
imd:55abbd4b70af4353bdea2595bbddcac4a2b7891a      David’s iPhone      ios arm64           iPhone OS 15.3.1

Build or run on a device:

x build --device adb:16ee50bc
[1/3] Fetch precompiled artifacts
info: component 'rust-std' for target 'aarch64-linux-android' is up to date
[1/3] Fetch precompiled artifacts [72ms]
[2/3] Build rust
    Finished dev [unoptimized + debuginfo] target(s) in 0.11s
[2/3] Build rust [143ms]
[3/3] Create apk [958ms]

x

Troubleshooting

Command not found

x doctor should let you know if there are any external tools missing.

 x doctor
--------------------clang/llvm toolchain--------------------
clang                14.0.6              /usr/bin/clang
clang++              14.0.6              /usr/bin/clang++
llvm-ar              unknown             /usr/bin/llvm-ar
llvm-lib             unknown             /usr/bin/llvm-lib
lld                  14.0.6              /usr/bin/lld
lld-link             14.0.6              /usr/bin/lld-link
lldb                 14.0.6              /usr/bin/lldb
lldb-server          unknown             /usr/bin/lldb-server

----------------------------rust----------------------------
rustup               1.25.1              /usr/bin/rustup
cargo                1.64.0              /usr/bin/cargo

--------------------------android---------------------------
adb                  1.0.41              /usr/bin/adb
javac                11.0.17             /usr/bin/javac
java                 11.0.17             /usr/bin/java
kotlin               1.7.20-release-201  /usr/bin/kotlin
gradle               7.5.1               /usr/bin/gradle

----------------------------ios-----------------------------
idevice_id           1.3.0-167-gb314f04  /usr/bin/idevice_id
ideviceinfo          1.3.0-167-gb314f04  /usr/bin/ideviceinfo
ideviceinstaller     1.1.1               /usr/bin/ideviceinstaller
ideviceimagemounter  1.3.0-167-gb314f04  /usr/bin/ideviceimagemounter
idevicedebug         1.3.0-167-gb314f04  /usr/bin/idevicedebug

---------------------------linux----------------------------
mksquashfs           4.5.1               /usr/bin/mksquashfs

error: failed to run custom build command for glib-sys v0.14.0

This means that gtk3-dev is not installed. Install gtk3-dev package to fix the problem.

Generating apple signing key/certificate

See apple_codesign_certificate_management for further information.

Generating mobile provisioning profiles

Without an apple developer account there is no cross platform way of generating mobile provisioning profiles. You can either figure out how to generate it using xcode or cook.

License

Apache-2.0 OR MIT

xbuild's People

Contributors

dvc94ch avatar marijns95 avatar onichandame avatar jsclary avatar notgull 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.