конфликт версий ssl при компоновке - PullRequest
0 голосов
/ 04 апреля 2020

У меня есть один двоичный файл, который требует 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, в то время как ускоряет связь с libssl.so .1.0.1.

Есть ли способ сделать это?

1 Ответ

0 голосов
/ 05 апреля 2020

Я хотел бы попросить mysqlconnector связываться с libssl.so.1.1, в то время как надбавить ссылку на libssl.so.1.0.1.

Есть ли способ сделать это?

Это уже происходит (это то, о чем вас предупреждает компоновщик).

Конечным результатом является программа, которая может работать или может работать sh. Если кажется, что он работает сегодня, он может начать падать завтра, для, казалось бы, не связанных изменений в системе. Другими словами, этот путь ведет к безумию.

Что вам нужно сделать, это получить согласованную среду сборки. То есть решите, какой из libssl.so.1.1 или libssl.so.1.0.1 вы собираетесь использовать, а затем либо соберите, либо иным образом получите libmysqlconnector.so и libbost.so, которые оба используют одну и ту же версию libssl.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...