更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 应用开发 > 在鸿蒙开发中编译构建hb build -f --patch出错怎么办

在鸿蒙开发中编译构建hb build -f --patch出错怎么办

更新时间:2022-06-17 15:18:44浏览次数:144+次

在鸿蒙开发中编译构建hb build -f --patch出错怎么办?

\

相关错误

1、当前OHOS版本号

openharmony-v3.0.2-lts。

2、patch文件

bestechnic ---> display_demo ---> patch。

3、硬件环境及需求描述

v200zr开发板。

4、导致错误操作流程(比如总共执行了哪些命令)

hb set 选择 display_demo。

hb build -f --patch编译,出现错误。

刚开始可以编译的,回来源码移到别的路径下,编译就出错,源码删了重新repo也不行,错误如下:

[OHOS INFO] patching file components/fs/fs.c

[OHOS INFO] Reversed (or previously applied) patch detected!  Assume -R? [n]

[OHOS INFO] Apply anyway? [n]

[OHOS INFO] Skipping patch.

[OHOS INFO] 21 out of 21 hunks ignored -- saving rejects to file components/fs/fs.c.rej

[OHOS INFO] patching file components/fs/littlefs/lfs_api.h

[OHOS INFO] Reversed (or previously applied) patch detected!  Assume -R? [n]

[OHOS INFO] Apply anyway? [n]

[OHOS INFO] Skipping patch.

[OHOS INFO] 1 out of 1 hunk ignored -- saving rejects to file components/fs/littlefs/lfs_api.h.rej

[OHOS ERROR] you can check build log in /home/hulg/OpenHarmony_v3.0.2_lts/out/bes2600w/display_demo/build.log

[OHOS ERROR] command: "patch -p1 < /home/hulg/OpenHarmony_v3.0.2_lts/vendor/bestechnic/patches/0001-kernel-liteos_m.patch" failed

[OHOS ERROR] return code: 1

[OHOS ERROR] execution path: /home/hulg/OpenHarmony_v3.0.2_lts/kernel/liteos_m

解答

可以通过重新获取源码来尝试一下是否解决。或者请看以下方案:

如果开始可以编译的,试着通过以下方法解决:

1、patch打成功后,需要先撤销再打,才能成功。

例如打patch时参数为:

patch -p1 < x.patch

撤销方法为:

patch -Rp1 < x.patch

根据你的描述,你可以去查看--patch执行的具体内容。

2、移动源码编译报错,建议你首先删除配置(会生成config.json)及输出目录信息,重新配置再编译、执行patch。

3、删除源码报错,注意删除的时候,也同时删除隐藏目录.repo。

可以通过ll命令查看是否已经删除成功。

相关参考:OpenHarmony开发中,hb build和hb build -f有什么区别