The app runs in the emulator now, and two of my own checks were wrong. With an injected ABI, AGP writes to intermediates/apk/debug, not outputs/apk/debug: a SUCCESSFUL build was reported "no APK produced" because only the second path was searched. That same mode marks the APK testOnly, so adb refuses it without -t — INSTALL_FAILED_TEST_ONLY. Both measured on the emulator, where ca.erplibre.home then installed, launched, and ran its SQLite migrations. The manifest also stops tracking sentencepiece at master, which made the build non-reproducible and, since August, unbuildable: master fetches protobuf and compiles protoc for the Android target before running it on the host. v0.2.1 ships its .pb.cc pre-generated. Its own absl subset still lacks flags/flag.cc, so that library remains to be sorted out upstream. --- FR --- L'application tourne dans l'émulateur, et deux de mes propres contrôles étaient faux. Avec une ABI injectée, AGP écrit dans intermediates/apk/debug et non dans outputs/apk/debug : une compilation RÉUSSIE était rapportée « aucun APK produit » parce que je ne regardais que le second chemin. Ce même mode marque l'APK testOnly, et adb le refuse sans -t — INSTALL_FAILED_TEST_ONLY. Les deux mesurés sur l'émulateur, où ca.erplibre.home s'est ensuite installé, lancé, et a joué ses migrations SQLite. Le manifeste cesse aussi de suivre sentencepiece à master, ce qui rendait la compilation non reproductible et, depuis août, impossible : master récupère protobuf et compile protoc pour la cible Android avant de l'exécuter sur l'hôte. La v0.2.1 livre ses .pb.cc pré-générés. Son propre sous-ensemble absl manque encore flags/flag.cc : cette bibliothèque reste à régler en amont. Assisted-by: Claude Opus 5
42 lines
1.7 KiB
XML
42 lines
1.7 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<manifest>
|
|
<remote name="TechnoLibre" fetch="https://github.com/TechnoLibre/" />
|
|
<remote name="ggerganov" fetch="https://github.com/ggerganov/" />
|
|
<remote name="google" fetch="https://github.com/google/" />
|
|
|
|
<project
|
|
name="technolibre_home_mobile.git"
|
|
path="mobile/erplibre_home_mobile"
|
|
remote="TechnoLibre"
|
|
revision="main"
|
|
groups="mobile"
|
|
/>
|
|
|
|
<!-- sentencepiece : tokeniseur SentencePiece pour MarianMT (NDK JNI)
|
|
Version PUBLIÉE, et non « master ». Deux raisons, la seconde
|
|
bloquante : « master » fait de ce dépôt une cible mouvante, et deux
|
|
VM construites le même jour peuvent ne pas contenir le même code ;
|
|
surtout, le master d'août 2026 récupère protobuf par FetchContent et
|
|
bâtit son « protoc » POUR LA CIBLE Android avant de l'exécuter sur
|
|
l'hôte — « Exec format error », la compilation s'arrête là. Mesuré sur
|
|
une VM Ubuntu 24.04. La v0.2.1 livre au contraire ses .pb.cc
|
|
pré-générés (src/builtin_pb) et n'a besoin d'aucun protoc. -->
|
|
<project
|
|
name="sentencepiece"
|
|
path="mobile/erplibre_home_mobile/android/app/src/main/cpp/sentencepiece"
|
|
remote="google"
|
|
revision="refs/tags/v0.2.1"
|
|
clone-depth="1"
|
|
groups="mobile"
|
|
/>
|
|
|
|
<!-- whisper.cpp : moteur de transcription audio locale (NDK JNI) -->
|
|
<project
|
|
name="whisper.cpp"
|
|
path="mobile/erplibre_home_mobile/android/app/src/main/cpp/whisper"
|
|
remote="ggerganov"
|
|
revision="master"
|
|
clone-depth="1"
|
|
groups="mobile"
|
|
/>
|
|
</manifest>
|