上游 · Kotlin/Native binary options
sourceInfoType:Adds file locations and line numbers to exception stack traces (libbacktrace / coresymbolication / noop).
全部配置 / KN-BINARY-SOURCEINFOTYPE
Xbinary=sourceInfoType · KN-BINARY-SOURCEINFOTYPE · 编译器参数(Native)
默认值:未设置。未指定时由消费侧决定;未核对前不写死取值。使用场合:场景可配。场景可配:有明确目标(性能、包体、安全、兼容)时再改。
用途。选择源码位置信息写入调试信息的方式。示例取值:`sourceInfoType=libbacktrace`(libbacktrace / coresymbolication / noop)。官方说明:Adds file locations and line numbers to exception stack traces (libbacktrace / coresymbolication / noop).
影响。官方描述:Adds file locations and line numbers to exception stack traces (libbacktrace / coresymbolication / noop). 变更后请在目标环境验证。
适用场景。场景可配。有明确需求再改,无需求时保持发行版默认更稳妥。改前核对目标限制与联动项,改后做冒烟。
| 可写取值 | 含义 | 使用场景 |
|---|---|---|
coresymbolication | 用 Core Symbolication 补充栈位置(Apple) | 仅 Apple 目标;文档称 macOS/模拟器 Debug 默认可走此路径 |
libbacktrace | 用 libbacktrace 为异常栈补充文件与行号 | 需要可读栈且非 Apple coresymbolication 路径时 |
noop | 不附加源码位置信息(文档默认) | 不需要异常栈文件行号,或减小相关开销时 |
含义/场景依据:upstream native-binary-options(sourceInfoType); upstream native-binary-options(noop default)
定义依据:konan/BinaryOptions.kt 在仓库中打开; konan/SourceInfoType.kt 在仓库中打开
// 文件:build.gradle.kts(应用的 Kotlin 模块,例如 composeApp)
kotlin {
ohosArm64 { // 按实际 native target 调整
binaries.all {
freeCompilerArgs += "-Xbinary=sourceInfoType=libbacktrace" // libbacktrace / coresymbolication / noop
}
}
}
不写这个配置时,编译器会怎么处理?
此选项默认未设置(空列表 / 空映射 / null)。不设置时由其他逻辑决定行为或直接跳过。
未指定时由消费侧决定;未核对前不写死取值。
以下摘抄原文中与本配置最相关的段落,便于速读;完整上下文请点原文。
sourceInfoType:Adds file locations and line numbers to exception stack traces (libbacktrace / coresymbolication / noop).