Dart added support for cross-compilation
a year ago
- #Dart
- #JavaScript
- #Compilation
- `dart compile`命令可将Dart程序编译到不同目标平台
- 子命令包括`exe`、`aot-snapshot`、`jit-snapshot`、`kernel`、`js`和`wasm`
- `exe`子命令可生成Windows/macOS/Linux的独立可执行文件
- 支持在macOS/Windows/Linux主机上交叉编译Linux x64和ARM64架构
- AOT模块(`aot-snapshot`)可减少磁盘占用但需匹配特定CPU架构
- JIT模块(`jit-snapshot`)包含训练运行的优化代码以实现更快执行
- Kernel模块(`kernel`)具有跨所有操作系统和CPU架构的可移植性
- `js`子命令支持-O0到-O4优化级别将Dart编译为JavaScript
- `js`编译选项包含输出文件指定、源码映射和环境变量配置
- Web编译最佳实践包括避免使用`Function.apply()`和`noSuchMethod()`