2

在尝试使用Persistence配置文件构建一个简单的Kogito应用程序时,构建失败并抱怨找不到 lib stdc++:

 /usr/bin/ld: cannot find -lstdc++

构建器映像基于 ubi8-minimal 并使用s2i工具与以下命令一起构建它:

 s2i build https://github.com/kiegroup/kogito-examples --context-dir jbpm-quarkus-example  quay.io/kiegroup/kogito-quarkus-ubi8-s2i:0.8.0-rc1 kogitotest:10.0 --runtime-image quay.io/kiegroup/kogito-quarkus-ubi8:0.8.0-rc1 --loglevel 5 --env MAVEN_MIRROR_URL=http://nexus.apps.spolti.cloud/nexus/content/groups/public/ --env NATIVE=true --env MAVEN_ARGS_APPEND="-Ppersistence"

作为第一个提示,我认为它可能与 libstdc++-static 相关,因为在我的本地机器上运行相同的构建时它可以工作,我发现 stdc++ lib 的唯一区别是我的机器具有 llibstdc++-devel 和静态包虽然图像只有 libstdc++,但尝试安装开发版,但没有运气,因此我认为它可能与静态版有关。

修复:

为了解决这个问题,我必须将 /usr/lib64/libstdc++.so.6.0.25 符号链接到 /usr/lib64/libstdc++.so 但不知道为什么在我的机器上它可以在没有符号链接的情况下工作并且具有盗版可用的相同库,例如 libstdc++ .so.6.0.27 带有指向 libstdc++.so.6 的符号链接

4

1 回答 1

0

适当的修复:

只需安装 gcc-c++ 包。

于 2020-03-06T13:49:31.490 回答