HarmonyOS鸿蒙Next HDC编译问题

HarmonyOS鸿蒙Next HDC编译问题 大神们:

新手一枚,想自行编译HDC,clone了如下链接:

https://gitee.com/openharmony/developtools_hdc_standard.git

切到节点:

commit 5304e6ff48d783362d577b8cf1fb1b34e3e451d4 (HEAD -> 3.1, origin/OpenHarmony-3.1-Release)

Linux版本:

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.6 LTS
Release:        20.04
Codename:       focal

通过build_standalone_linux_host.sh进行编译,出现如下错误:

/home/server/hdc/developtools_hdc_standard/scripts/ohos_hdc_build/developtools_hdc_standard/src/common/define_plus.h: In constructor ‘Hdc::HostUSBEndpoint::HostUSBEndpoint()’:
/home/server/hdc/developtools_hdc_standard/scripts/ohos_hdc_build/developtools_hdc_standard/src/common/define_plus.h:256:15: error: ‘memset_s’ was not declared in this scope; did you mean ‘memset_sp’?
  256 |         (void)memset_s(buf, sizeEpBuf, 0, sizeEpBuf);
     |             ^~~~~~~~
     |             memset_sp

In file included from /home/server/hdc/developtools_hdc_standard/scripts/ohos_hdc_build/developtools_hdc_standard/src/common/define.h:17,
                 from src/common/common.h:28,
                 from src/common/auth.h:17,
                 from src/common/auth.cpp:15:
/home/server/hdc/developtools_hdc_standard/scripts/ohos_hdc_build/developtools_hdc_standard/src/common/define_plus.h: In constructor ‘Hdc::HostUSBEndpoint::HostUSBEndpoint()’:
/home/server/hdc/developtools_hdc_standard/scripts/ohos_hdc_build/developtools_hdc_standard/src/common/define_plus.h:256:15: error: ‘memset_s’ was not declared in this scope; did you mean ‘memset_sp’?

基本都是类似的头文件引入错误,问题是我切的是一个release分支,不应该出现大量类似的错误吧?

我的环境有问题吗?需要如何解决?


更多关于HarmonyOS鸿蒙Next HDC编译问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

这是缺少头文件吧,可以通过 man memset_s 看下这个函数在哪个头文件里。

更多关于HarmonyOS鸿蒙Next HDC编译问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


不好意思,好久没登陆了【狗头】,我的意思是,我是在一个release分支上进行的编译,为什么会出现缺少头文件的错误,是机器少安装了什么软件,还是缺少啥配置,

在HarmonyOS鸿蒙Next的HDC(HarmonyOS Device Connector)编译过程中,可能会遇到以下常见问题:

  1. 环境配置错误:确保开发环境中的JDK、Node.js、HarmonyOS SDK等工具版本符合要求。版本不匹配可能导致编译失败。

  2. 依赖缺失:项目依赖的库或模块未正确安装或配置,可能导致编译错误。检查oh-package.jsonbuild.gradle文件,确保所有依赖项已正确声明。

  3. 资源文件错误:资源文件(如图片、布局文件等)路径错误或格式不正确,可能导致编译失败。检查资源文件的路径和格式是否符合规范。

  4. 代码语法错误:代码中存在语法错误或逻辑问题,可能导致编译失败。使用IDE的代码检查工具,确保代码符合HarmonyOS的编程规范。

  5. 设备连接问题:如果编译涉及设备调试,确保设备已正确连接并授权调试。设备未连接或未授权可能导致编译失败。

  6. 构建配置错误build.gradleohos.build文件中的构建配置错误,可能导致编译失败。检查构建配置文件,确保配置正确。

  7. 网络问题:编译过程中需要从远程仓库下载依赖,网络不稳定可能导致编译失败。确保网络连接稳定。

  8. 权限问题:编译过程中需要访问某些系统资源或文件,权限不足可能导致编译失败。确保开发环境具有足够的权限。

  9. 缓存问题:IDE或构建工具的缓存可能导致编译失败。尝试清理缓存并重新编译。

  10. 版本兼容性问题:HarmonyOS SDK与开发工具版本不兼容,可能导致编译失败。确保所有工具版本兼容。

以上是HarmonyOS鸿蒙Next HDC编译过程中可能遇到的问题,具体问题需根据错误日志进行排查。

在HarmonyOS鸿蒙Next的HDC编译过程中,可能会遇到以下常见问题及解决方案:

  1. 环境配置问题:确保开发环境已正确配置,包括JDK、Node.js、DevEco Studio等工具的版本兼容性。建议使用官方推荐的版本。

  2. 依赖库缺失或版本不匹配:检查项目依赖库是否完整,并确保使用的库版本与鸿蒙Next兼容。可通过npm installyarn install重新安装依赖。

  3. 编译错误:仔细查看编译日志,定位错误信息。常见错误包括语法错误、资源文件缺失或路径错误。根据提示进行修正。

  4. HDC命令问题:确保HDC命令正确使用,如hdc shellhdc file send等。检查设备连接状态,确保设备已正确授权。

  5. 设备兼容性:确认开发设备支持鸿蒙Next系统,并已安装最新的系统更新。

若问题持续,建议查阅官方文档或社区论坛,获取更详细的解决方案。

回到顶部