
回复
添加资源
添加资源将有机会获得更多曝光,你也可以直接关联已上传资源 去关联
sysroot是一个用作clang编译器查找标准库和头文件的根目录,其中libc库是由开源库musl编译得到。
/prebuilts/lite/sysroot
├── build # 工具链构建目录,包括构建脚本
├── thirdparty # 临时生成的工具链构建所需的三方头文件
├── usr # 对外C库及头文件
│ ├── include # 对外头文件存放目录
│ │ └── arm-liteos # 工具链对应的芯片架构
│ └── lib # 对外C库存放目录
│ └── arm-liteos # 工具链对应的芯片架构
只适用于OpenHarmony内核。
musl库bug修复或者新版本更新时,需要重新编译构建新的libc库。分别执行build目录下的thirdparty_headers.sh和build_musl_clang.sh脚本即可编译构建出新的libc库,存放于/prebuilts/lite/sysroot/build/usr目录下,然后替换/prebuilts/lite/sysroot/usr目录下对应的头文件及libc库即可。
clang -o helloworld helloworld.c -target arm-liteos -L ~/llvm/lib/clang/9.0.0/lib/arm-liteos/a7_softfp_neon-vfpv4 --sysroot=/usr/xxx/OS/prebuilts/lite/sysroot/
其中,编译器目录为~/llvm。
内核子系统
prebuilts_lite_sysroot