Vous pouvez également télécharger les versions APK à partir de la page des versions.
PS : vous n'avez pas besoin de le reconstruire car j'ai placé les fichiers C++ prédéfinis dans native/libheat
.
Afin de procéder à la génération de code, vous aurez besoin de SyslabCC qui est un compilateur Julia AOT fourni dans MWORKS.Syslab.
> scc build.jl -o libheat.dll --no-blas> ls .syslabcc-cache/libheat/ atomic_ops bin juliamk.jl libheat.cpp make.jl syslabcrt-dylib syslabcrt-io bdwgc ghc-filesystem lib libheat.h Makefile syslabcrt-intrinsics win32-implib
Ensuite, vous copiez le contenu de .syslabcc-cache/libheat/
dans native/libheat
.
Vous devez disposer d'un appareil mobile Android pour exécuter l'application.
Ce projet doit également s'appuyer sur Linux x64/aarch64, mais il se peut qu'il ne s'appuie pas sur Windows car SyslabCC publié le 2024/06 ne prend pas en charge MSVC (le récent a pris en charge la version Windows/macOS mais il n'est pas encore disponible publiquement).
# le mode de débogage pour Flutter Android utilise ABIflutter run 32 bits# flutter run -d <l'identifiant de votre téléphone Android>
Pour plus de détails, consultez Déboguer les applications Flutter.
J'utilise Rust pour créer le projet C++ généré par Julia et les intégrer dans Flutter.
Cependant, la bibliothèque générée nécessite libc++_shared.so
sur Android. J'utilise les patchs de ceci :
Modification android/app/build.gradle
selon le commit aa78bf1
Ajoutez les lignes suivantes à native/hub/build.rs
:
laissez target_os = std::env::var("CARGO_CFG_TARGET_OS");match target_os.as_ref().map(|x| &**x) { Ok("android") => { println!("cargo:rustc -link-lib=dylib=stdc++"); println!("cargo:rustc-link-lib=c++_shared"); }, _ => {}}