Commit b5a4ea9
committed
fix(android): say why libcraft.so did not load, instead of nothing at all
The load was a bare try/catch returning false. That is correct behaviour — an
app with no Zig runtime is the shim-only configuration, not an error — but it
threw away the dynamic linker's explanation on the way.
The first time the runtime was genuinely shipped and genuinely failed to load,
that cost a whole CI cycle: the APK carried lib/x86_64/libcraft.so, the app
launched, all four bridge cases passed, and the entire evidence for what went
wrong was that `CraftNative` never appeared in logcat. No linker line, no
exception, nothing.
Both outcomes are logged now, under the same tag Zig's own output uses, so the
pair reads as a sequence: "libcraft.so loaded" then "registered 59 natives"
means bound; the first without the second means it loaded and failed to bind;
neither means it never loaded, and the warning carries the linker's own
complaint about why.1 parent 687dd81 commit b5a4ea9
1 file changed
Lines changed: 14 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
110 | 110 | | |
111 | 111 | | |
112 | 112 | | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
113 | 119 | | |
114 | 120 | | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
115 | 128 | | |
116 | 129 | | |
| 130 | + | |
117 | 131 | | |
118 | 132 | | |
119 | 133 | | |
| |||
0 commit comments