Você também pode baixar as versões do APK na página de lançamento.
PS: Você não precisa compilá-lo novamente, pois coloquei os arquivos C++ pré-construídos em native/libheat
.
Para prosseguir com a geração do código, você precisará do SyslabCC, que é um compilador Julia AOT incluído no 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
Então você copia o conteúdo em .syslabcc-cache/libheat/
para native/libheat
.
Você precisa ter um dispositivo móvel Android para executar o aplicativo.
Este projeto também deve ser construído em Linux x64/aarch64, mas pode não ser construído em Windows, pois o SyslabCC lançado em 2024/06 não oferece suporte a MSVC (o mais recente oferece suporte à construção de Windows/macOS, mas ainda não está disponível publicamente).
# modo de depuração para Flutter Android usa ABIflutter run de 32 bits# flutter run -d <seu ID do dispositivo do telefone Android>
Para obter mais detalhes, consulte Depurar aplicativos Flutter.
Eu uso Rust para construir o projeto C++ gerado por Julia e integrá-los ao Flutter.
No entanto, a biblioteca gerada requer libc++_shared.so
no Android. Eu uso patches deste:
Modificando android/app/build.gradle
de acordo com o commit aa78bf1
Adicione as seguintes linhas a native/hub/build.rs
:
deixe 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!("carga:rustc-link-lib=c++_shared"); }, _ => {}}