Связывание приложения 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.

Другие вопросы по тегам