https://github.com/n0-computer/iroh-ffi
FFI bindings for iroh
https://github.com/n0-computer/iroh-ffi
Last synced: 11 months ago
JSON representation
FFI bindings for iroh
- Host: GitHub
- URL: https://github.com/n0-computer/iroh-ffi
- Owner: n0-computer
- Created: 2023-05-23T04:13:41.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-24T07:54:54.000Z (over 1 year ago)
- Last Synced: 2024-10-25T04:14:05.636Z (over 1 year ago)
- Language: Kotlin
- Homepage: https://iroh.computer
- Size: 2.32 MB
- Stars: 23
- Watchers: 8
- Forks: 8
- Open Issues: 18
-
Metadata Files:
- Readme: README.kotlin.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
- awesome-java - Iroh FFI
README
# Iroh Kotlin
## Requirements
### Gradle
- Install `java`
- Install `gradle`
- [`kotlinc`](https://kotlinlang.org/docs/command-line.html)
- [`ktlint`](https://github.com/pinterest/ktlint)
### Android Development
- Install the NDK you want to use, using Android Studio.
- Configure rust to use it, eg.
with an NDK location of `NDK=/Users/dignifiedquire/Library/Android/sdk/ndk/25.2.9519653` and an android ABI target of `29`.
```toml
# .cargo/config.toml
[target.aarch64-linux-android]
ar = "/toolchains/llvm/prebuilt/darwin-x86_64/bin/llvm-ar"
linker = "/toolchains/llvm/prebuilt/darwin-x86_64/bin/aarch64-linux-android29-clang"
[target.armv7-linux-androideabi]
ar = "/toolchains/llvm/prebuilt/darwin-x86_64/bin/llvm-ar"
linker = "/toolchains/llvm/prebuilt/darwin-x86_64/bin/armv7a-linux-androideabi29-clang"
[target.i686-linux-android]
ar = "/toolchains/llvm/prebuilt/darwin-x86_64/bin/llvm-ar"
linker = "/toolchains/llvm/prebuilt/darwin-x86_64/bin/i686-linux-android29-clang"
[target.x86_64-linux-android]
ar = "/toolchains/llvm/prebuilt/darwin-x86_64/bin/llvm-ar"
linker = "/toolchains/llvm/prebuilt/darwin-x86_64/bin/x86_64-linux-android29-clang"
```
## References
- https://sal.dev/android/intro-rust-android-uniffi/