Как связать статические и динамические библиотеки одновременно? - PullRequest
0 голосов
/ 22 марта 2019

Я использую QtCreator для своего проекта, мне нужно динамически связывать некоторые библиотеки из-за лицензии, и у меня есть некоторая более доступная статическая библиотека, но я использую только небольшую часть из нее. Когда я попробовал это, я получил ошибку, смешивая сборки.

base.lib(base.thread_local_storage.obj):-1: error: LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in Updater.obj

Я использую msvc2017-64. Как настроить файл .pro для достижения этой цели?

1 Ответ

0 голосов
/ 22 марта 2019

Ваши CRT-привязки находятся в несоответствии.

В Project> C / C ++ Все параметры> Библиотека времени выполнения

Вам нужно изменить хотя бы одну из библиотек на MT или MD, чтобыбольше не будет несоответствия.

Здесь вы найдете решение: LNK2038: обнаружено несоответствие для 'RuntimeLibrary': значение 'MT_StaticRelease' не соответствует значению 'MD_DynamicRelease' в file.obj

Если вы компилируете библиотеки с помощью Visual Studio

...