Связывание приложения C (C++) с клиентской библиотекой PostgreSQL libpq.lib
Я пытаюсь создать приложение в Visual Studio 2013, связывая его с библиотекой libpq.lib, загруженной с помощью двоичного установщика PostgreSQL версии 9.4 для Windows. Я получаю эту ошибку:
LNK2038: обнаружено несоответствие для _MSC_VER: значение "1800" не соответствует значению "1600" в...
Я предполагаю, что загруженная библиотека была построена с более ранней версией компилятора MSVC (Visual Studio 2010?).
Я хотел бы знать, какой компилятор MSVC использовался для сборки различных версий libpq, начиная с версии 9.4, 9.5, .... 10.0.
Моя ошибка компиляции указывает, что современные компиляторы / компоновщик MSVC будут проверять согласованность (значение _MSC_VER). Помешает ли это связыванию с libpq.lib в VS2015 и VS2017? (При условии, что libpq.lib был собран с VS2013).
1 ответ
Я предполагаю, что вы говорите о двоичных файлах PostgreSQL для Windows, предоставляемых EnterpriseDB.
Все версии от 9.4 до v10 были построены с Visual Studio 2013, и я успешно использовал Express Edition для создания серверных расширений для Windows.