logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

在 HarmonyOS 上给 QEMU 搭一个最小 aarch64 Linux guest(内核 + busybox initramfs)

本文涉及到的全部工作以及本文的撰写全部由 AI 完成。注:此前我们已经编译了 gcc-16 和 clang-22 以及 qemu ,相关记录在前面几篇文章里可以看到。事实证明事先准备好 gcc-16 和 clang-22 的确省了一些麻烦, ohos-sdk 提供的 clang-15 版本还是稍微低了点。之前我们已经编译了 QEMU。QEMU 编出来之后,要在的-M virt上真正 boot 一个

#harmonyos#linux#华为 +1
在 HarmonyOS 上从源码构建 QEMU 11.1.1(qemu-system-aarch64 / x86_64 / qemu-img):完整记录

_userQEMU 的 configure 用__linux__宏(编译探测)而非uname -s判断 host OS,所以 HarmonyOS 直接被当成 Linux 原生构建,这一点比 LLVM 的友好。真正的坑集中在OHOS 的 Bionic 风格内核 UAPI 头与主线 Linux 头对不齐_UAPI_vs_LINUX_保护宏、__user漏定义、的__MUSL__约定),以及Harmon

#harmonyos#华为#鸿蒙
在 HarmonyOS 上从源码构建 GCC 16(gcc/g++ + libstdc++ + libsanitizer):完整记录

libsanitizer 是 LLVM compiler-rt 的移植,会同时include和(间接拉进OHOS 头文件(bionic 风格)里这两套同名结构体(这正是你在 LLVM compiler-rt 里撞到、最后靠关掉 sanitizer 绕开的那类问题。

#harmonyos#c++#华为 +1
在鸿蒙 PC 上 `import std;` 拢共分几步?手把手带你在鸿蒙 PC 上编译 llvm-project

不用 ohos-sdk 的:它把写死成 SDK 的 clang 15(编不了 libc++ 22),而且会注入-lunwind这些对「编译运行时库自身」有害的 flag。新建# 为 aarch64-linux-ohos 构建 LLVM 运行时库(compiler-rt/libunwind/libcxxabi/libcxx)# 关键:用 Linux 让 compiler-rt 走它的 crt 构建路

#鸿蒙
在鸿蒙 PC 上 `import std;` 拢共分几步?手把手带你在鸿蒙 PC 上编译 llvm-project

不用 ohos-sdk 的:它把写死成 SDK 的 clang 15(编不了 libc++ 22),而且会注入-lunwind这些对「编译运行时库自身」有害的 flag。新建# 为 aarch64-linux-ohos 构建 LLVM 运行时库(compiler-rt/libunwind/libcxxabi/libcxx)# 关键:用 Linux 让 compiler-rt 走它的 crt 构建路

#鸿蒙
为了求正切的麦克劳林展开式,我复习了伯努利数

这是一篇随笔。前段时间数分课讲到了Taylor公式,做题的时候常常会用到sin⁡x,cos⁡x\sin x,\cos xsinx,cosx等函数的Taylor展开式。我们容易写出sin⁡x\sin xsinx和cos⁡x\cos xcosx的nnn阶麦克劳林展开式,但是tan⁡x\tan xtanx的麦克劳林展开式比较复杂,于是我翻开《具体数学》重新学习了一下跟伯努利数有关的内容,并做一些简单的整

#数学
到底了