بنقرة واحدة
build-native
// Build connect_norito_bridge native .so files from Rust source. Use when user says "build native", "build .so", "rebuild native libs", "update native bridge", or "cargo ndk build".
// Build connect_norito_bridge native .so files from Rust source. Use when user says "build native", "build .so", "rebuild native libs", "update native bridge", or "cargo ndk build".
Use native Torii MCP on deployed Iroha networks such as Taira and future Nexus endpoints for live account, asset, contract, governance, and transaction workflows.
Bring up and use a Mochi-managed local Iroha sandbox plus its local Torii MCP endpoint. Use when Codex needs a reliable local devnet, needs to print or verify the `codex mcp add mochi-local --url ...` command, or should consume the generated `.env.local` and `.mochi/generated/*` bootstrap files for local-only development.
Work against the SORA Minamoto mainnet through its deployed Torii MCP endpoint for live account, asset, alias, contract, governance, Musubi package-registry, and transaction workflows. Use when Codex needs to inspect Minamoto mainnet, verify or add `https://minamoto.sora.org/v1/mcp`, prefer the curated `iroha.*` tool surface, classify Minamoto ingress and chain-health failures correctly, or handle runtime-only signing inputs such as `authority` and `private_key`.
Work against the SORA Taira testnet through its deployed Torii MCP endpoint for live account, asset, alias, contract, governance, Musubi package-registry, and transaction workflows. Use when Codex needs to inspect or mutate the Taira testnet, verify or add `https://taira.sora.org/v1/mcp`, prefer the curated `iroha.*` tool surface, classify Taira ingress and chain-health failures correctly, or handle runtime-only signing inputs such as `authority` and `private_key`.
| name | build-native |
| description | Build connect_norito_bridge native .so files from Rust source. Use when user says "build native", "build .so", "rebuild native libs", "update native bridge", or "cargo ndk build". |
Builds libconnect_norito_bridge.so for Android from the Rust crate at crates/connect_norito_bridge in the iroha repository. The Kotlin SDK lives next to the java/ directory in the same repo, so the Rust source is at ../../crates/connect_norito_bridge relative to this project.
aarch64-linux-android, x86_64-linux-androidcargo-ndk installed: cargo install cargo-ndkANDROID_NDK_HOME environment variable set (NDK 28+)./gradlew :offline-wallet-android:buildNativeLibs
The task reads iroha.dir from local.properties and runs cargo ndk. Output goes to offline-wallet-android/src/main/jniLibs/.
which cargo-ndk || cargo install cargo-ndk
echo $ANDROID_NDK_HOME
rustup target list --installed | grep android
If targets are missing:
rustup target add aarch64-linux-android x86_64-linux-android
From the iroha repository root:
cargo ndk -t arm64-v8a -t x86_64 \
-o <kotlin-sdk-dir>/offline-wallet-android/src/main/jniLibs \
build --release -p connect_norito_bridge
Target ABIs:
arm64-v8a — production devices (required)x86_64 — emulators (required for development)armeabi-v7a — skip (upstream rkyv crate incompatible with 32-bit)ls -lh offline-wallet-android/src/main/jniLibs/arm64-v8a/libconnect_norito_bridge.so # ~14MB
ls -lh offline-wallet-android/src/main/jniLibs/x86_64/libconnect_norito_bridge.so # ~18MB
rkyv crate has a const evaluation overflow on 32-bit targets. This is upstream; skip this ABI.rustc --version.