HarmonyOS鸿蒙Next中jenkins流水线构建非加签包时提示/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found

HarmonyOS鸿蒙Next中jenkins流水线构建非加签包时提示/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21’ not found 相关工具下载地址:
Command Line Tools
sdk-linux

配置的环境变量
export OHPM_HOM=/usr/local/harmony/command-line-tools/ohpm
export HDC_HOME=/usr/local/harmony/sdk-linux-4.1.3.700-SP2/sdk/HarmonyOS-NEXT-DP2/base/toolchains
export HOS_SDK_HOME=/usr/local/harmony/sdk-linux-4.1.3.700-SP2/sdk
export PATH=${PATH}:${HDC_HOME}:${HOS_SDK_HOME}:${OHPM_HOM}


更多关于HarmonyOS鸿蒙Next中jenkins流水线构建非加签包时提示/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

,请您按如下方法排查:

  1. 移植到的目标系统没有这个库,先排查系统是否具有这个库,具体命令参考linux命令如: strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

  2. 使用echo $LD_LIBRARY_PATH 没有的话加一下:export LD_LIBRARY_PATH=/path/to/library:$LD_LIBRARY_PATH /path/to/library 是所需库的路径

,请您参考:

  1. (arkts-no-any-unknown) 报错是语法校验,适配规则参考

    https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/typescript-to-arkts-migration-guide-V5

  2. Cannot find module ‘xxx’ or its corresponding type declarations 报错是没有找到该库,请确认是否ohpm install初始化过,是否在oh_modules里面有正常下载正常的xxx依赖库。

,请您尝试配置代码检查规则,参考链接:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-code-linter-V5

,请您尝试流水线场景,命令行工具sdkmgr下载Linux SDK,参考文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-command-line-building-app-V5

更多关于HarmonyOS鸿蒙Next中jenkins流水线构建非加签包时提示/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中使用Jenkins流水线构建非加签包时,提示/lib64/libstdc++.so.6: version 'GLIBCXX_3.4.21' not found,通常是由于系统中安装的libstdc++库版本过低,无法满足构建工具链的依赖要求。libstdc++是GNU C++标准库,GLIBCXX_3.4.21是该库的一个版本符号。

要解决此问题,可以尝试以下步骤:

  1. 检查当前libstdc++.so.6版本:通过命令strings /lib64/libstdc++.so.6 | grep GLIBCXX查看当前系统中libstdc++.so.6支持的版本符号列表。确认是否包含GLIBCXX_3.4.21

  2. 更新libstdc++:如果当前版本过低,可以通过包管理器(如yumapt)安装或更新libstdc++库。例如,使用sudo yum install libstdc++sudo apt-get install libstdc++6

  3. 手动替换libstdc++.so.6:如果包管理器无法提供足够新的版本,可以从其他系统或源码编译获取更新的libstdc++.so.6,并手动替换。

确保操作后重新运行Jenkins流水线构建任务。

在HarmonyOS鸿蒙Next中使用Jenkins构建非加签包时,提示/lib64/libstdc++.so.6: version 'GLIBCXX_3.4.21' not found,通常是由于系统中缺少所需的GLIBCXX版本。

  1. 检查GLIBCXX版本:运行strings /lib64/libstdc++.so.6 | grep GLIBCXX,查看当前支持的版本。
  2. 更新GCC:如果缺少GLIBCXX_3.4.21,可能需要更新GCC版本,使用sudo yum install devtoolset-8sudo apt-get install g++-8安装较新版本。
  3. 设置环境变量:更新后,确保使用新版本的GCC,可以通过export LD_LIBRARY_PATH=/path/to/new/libstdc++.so.6设置环境变量。
  4. 重新构建:完成上述步骤后,重新启动Jenkins流水线进行构建。
回到顶部