Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | - | - | ||||
compile_script/ | 12-May-2024 | - | 363 | 271 | ||
config/ | 12-May-2024 | - | 569 | 486 | ||
core/gn/ | 12-May-2024 | - | 45 | 38 | ||
prebuilts_download/ | 12-May-2024 | - | 550 | 446 | ||
templates/cxx/ | 12-May-2024 | - | 138 | 130 | ||
third_party_gn/ | 12-May-2024 | - | 1,176 | 1,130 | ||
toolchain/ | 12-May-2024 | - | 1,250 | 974 | ||
README.md | D | 12-May-2024 | 2.3 KiB | 75 | 60 | |
ark.gni | D | 12-May-2024 | 693 | 18 | 15 | |
ark_var.gni | D | 12-May-2024 | 653 | 18 | 16 | |
preconfig_ubuntu.md | D | 12-May-2024 | 1.2 KiB | 33 | 26 | |
test.gni | D | 12-May-2024 | 2.4 KiB | 79 | 69 |
README.md
1# 方舟编译器部件 2 3## 简介 4方舟编译器部件供了一个基于GN和Ninja的集成编译构建框架。构建流程由鸿蒙方舟编译分流,并在构建基础上增加跨平台方式。 5 6方舟编译器部件架构图: 7 8 9 10## 目录结构 11``` 12/arkcompiler/ 13├── profiler # 性能调优组件 14├── ets_runtime # 方舟eTS(兼容JS/TS)运行时时 15├── runtime_core # 方舟运行时公共库 16├── ets_frontend # 方舟eTS(兼容JS/TS)前端编译器 17├── toolchain # 方舟运行时调试调优工具链 18│ └── build # 编译配置 19├── third_party # 三方库 20│ └── protobuf 21│ └── icu 22│ └── zlib 23│ └── bounds_checking_function 24``` 25 26## 环境配置 27获取源码及安装依赖工具,详细参考[点击这里](https://gitee.com/lordwithcc/arkcompiler_toolchain/blob/add_standalone_part/build/preconfig_ubuntu.md) 28 29## 使用说明 30abc文件:由方舟前端将js文件转换生成的字节码文件 31 32ark_js_vm:运行abc文件的工具 33 34### step1 生成编译产物ark_js_vm 35``` 36python ark.py x64.release 37``` 38### step2 将js文件转换为abc文件 39``` 40./out/x64.release/arkcompiler/ets_frontend/es2abc test.js 41``` 42### step3 执行生成的abc文件 43``` 44LD_LIBRARY_PATH=out/x64.release:prebuilts/clang/ohos/linux-x86_64/llvm/lib ./out/x64.release/arkcompiler/ets_runtime/ark_js_vm test.abc 45``` 46### 执行262测试套 47``` 48python ark.py x64.release -test262 49``` 50 51## 编译选项 52 53交叉编译可根据目标选择不同平台,在x64平台构建android_arm目标平台 54``` 55python ark.py android_arm.release 56``` 57编译模式选择,在x64平台构建debug版本 58``` 59python ark.py x64.debug 60``` 61获取更多编译说明 62``` 63python ark.py -help 64``` 65 66## 相关仓 67[arkcompiler\_runtime\_core](https://gitee.com/openharmony/arkcompiler_runtime_core) 68 69[arkcompiler\_ets\_runtime](https://gitee.com/openharmony/arkcompiler_ets_runtime) 70 71[arkcompiler\_ets\_frontend](https://gitee.com/openharmony/arkcompiler_ets_frontend) 72 73**[arkcompiler\_toolchain](https://gitee.com/openharmony/arkcompiler_toolchain)** 74 75[developtools\_profiler](https://gitee.com/openharmony/developtools_profiler)