【问题标题】:ssl version conflict when linking链接时ssl版本冲突
【发布时间】:2020-07-16 08:50:55
【问题描述】:

我有一个需要 boost 和 mysqlconnector 的二进制文件,所以在链接时。

但是boost依赖于libssl.so.1.0.1,而mysqlconnector依赖于libssl.so.1.1

链接时,我收到以下警告。

/usr/bin/ld: warning: libssl.so.1.1, needed by //usr/lib/x86_64-linux-gnu/libmysqlcppconn.so.7, may conflict with libssl.so.1.0.0

我想告诉 mysqlconnector 链接到 libssl.so.1.1,而 boost 链接到 libssl.so.1.0.1。

有什么办法吗?

【问题讨论】:

    标签: linux ssl shared-libraries version ld


    【解决方案1】:

    我想告诉 mysqlconnector 链接到 libssl.so.1.1 而 boost 链接到 libssl.so.1.0.1。

    有什么办法吗?

    已经发生了(这是链接器警告你的事情)。

    最终结果是程序可能看起来可以运行,或者可能会崩溃。如果它今天似乎工作,它可能会在明天开始崩溃,因为对系统的看似无关的更改。换句话说,这条路会导致精神错乱。

    你应该做的是获得一个一致的构建环境。也就是说,决定您要使用libssl.so.1.1libssl.so.1.0.1 中的哪一个,然后构建或以其他方式获取libmysqlconnector.solibbost.so,其中两者 使用相同版本的libssl .

    【讨论】:

      猜你喜欢
      • 2020-12-31
      • 2017-01-29
      • 2019-08-07
      • 1970-01-01
      • 2016-01-09
      • 2015-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多