Переключение платформы платформы с v140 на v110 в Visual Studio 2015

Я портирую исходный код для расширения PHP, которое было изначально написано для среды UNIX.

Я разрешил все зависимости библиотек и успешно скомпилировал их, однако сервер EasyPHP, который мы используем для тестирования, отказывается загружать модуль DLL.

Я предположил, что это потому, что я скомпилировал DLL, используя набор инструментов платформы Visual Studio 2015 (v140), в то время как оригинальный PHP сервер использует исходный код v11, насколько я знаю.

Однако при изменении проекта с v140 на набор инструментов Visual Studio 2012 (v110) возникают следующие ошибки:

LNK1120 5 unresolved externals  DINAPIS_PHP_MATH

LNK2001 unresolved external symbol __imp____stdio_common_vsprintf   DINAPIS_PHP_MATH    D:\[...]\jansson_d.lib(dump.obj)

LNK2001 unresolved external symbol __imp____stdio_common_vsprintf   DINAPIS_PHP_MATH    D:\[...]\jansson_d.lib(error.obj)

LNK2019 unresolved external symbol __imp____acrt_iob_func referenced in function _json_loadf    DINAPIS_PHP_MATH    D:\[...]\jansson_d.lib(load.obj)

LNK2019 unresolved external symbol __imp____stdio_common_vsprintf referenced in function __vsnprintf_l  DINAPIS_PHP_MATH    D:\[...]\jansson_d.lib(load.obj)

LNK2019 unresolved external symbol __imp__strtoll referenced in function _lex_scan_number   DINAPIS_PHP_MATH    D:\[...]\jansson_d.lib(load.obj)

LNK2001 unresolved external symbol __imp____stdio_common_vsprintf   DINAPIS_PHP_MATH    D:\[...]\jansson_d.lib(strconv.obj)

LNK2019 unresolved external symbol __imp___dclass referenced in function _json_real DINAPIS_PHP_MATH    D:\[...]\jansson_d.lib(value.obj)

LNK2019 unresolved external symbol __ltod3 referenced in function _json_number_value    DINAPIS_PHP_MATH    D:\[...]\jansson_d.lib(value.obj)

LNK2005 _sprintf already defined in jansson_d.lib(dump.obj) DINAPIS_PHP_MATH    D:\Projects\Dinapis PHP Math\php-extension-win\DINAPIS_PHP_MATH\DINAPIS_PHP_MATH\MSVCRTD.lib(MSVCR110D.dll)

Как видите, эта библиотека «jansson» создает все проблемы и доставляет мне головную боль при оригинальном портировании.

Так чего же не хватает в наборе инструментов v110, который выдает эти ошибки, когда v140 компилируется нормально? Как это решить?

Спасибо!

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]