尝试使用Kogito配置文件来构建简单的Persistence应用程序时,由于无法找到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的符号链接
答案 0 :(得分:0)
正确的解决方法:
只需安装gcc-c ++软件包。