apache — ошибки компиляции PHP 5.5 с VC9

По информации на странице https://wiki.php.net/internals/windows/compiler Я пытаюсь скомпилировать PHP5.5 для поддержки VC9-x86 — мне абсолютно нужна эта версия.

Это должно работать, как указано на странице.

Я придерживаюсь инструкции на странице https://wiki.php.net/internals/windows/stepbystepbuild но я получаю ряд ошибок:

ext\standard\info.c(502) : error C2065: 'PRODUCT_SERVER_FOUNDATION' : undeclared  identifier
ext\standard\info.c(502) : error C2051: case expression not constant
ext\standard\info.c(532) : error C2065: 'PRODUCT_STORAGE_EXPRESS_SERVER_CORE' : undeclared identifier
ext\standard\info.c(532) : error C2051: case expression not constant
ext\standard\info.c(535) : error C2065: 'PRODUCT_STORAGE_STANDARD_SERVER_CORE' :
undeclared identifier
ext\standard\info.c(535) : error C2051: case expression not constant
ext\standard\info.c(538) : error C2065: 'PRODUCT_STORAGE_WORKGROUP_SERVER_CORE'
: undeclared identifier
ext\standard\info.c(538) : error C2051: case expression not constant
ext\standard\info.c(541) : error C2065: 'PRODUCT_STORAGE_ENTERPRISE_SERVER_CORE'
: undeclared identifier
ext\standard\info.c(541) : error C2051: case expression not constant
ext\standard\info.c(544) : error C2065: 'PRODUCT_STARTER_N' : undeclared identif
ier
ext\standard\info.c(544) : error C2051: case expression not constant
ext\standard\info.c(547) : error C2065: 'PRODUCT_PROFESSIONAL' : undeclared iden
tifier
ext\standard\info.c(547) : error C2051: case expression not constant
ext\standard\info.c(550) : error C2065: 'PRODUCT_PROFESSIONAL_N' : undeclared id
entifier
ext\standard\info.c(550) : error C2051: case expression not constant

Как я могу решить?

2

Решение

Наконец-то я нашел решение.

Сообщаемые константы не определены по простой причине: SDK6.1 не включает их.
Константы определены в файле C: \ php-sdk \ phpdev \ vc9 \ x86 \ php-5.5.30-src \ ext \ standard \ winver.h, но они обусловлены постоянным значением, которое всегда существует:

#ifndef PRODUCT_ULTIMATE

Я изменил это с первой отсутствующей константой как:

#ifndef PRODUCT_STORAGE_EXPRESS_SERVER_CORE // SM PRODUCT_ULTIMATE

В плюс я добавил недостающее значение несколькими строками ниже:

#define PRODUCT_STARTER_E                           0x00000042  //SM

Таким образом, я могу скомпилировать как php.exe, так и библиотеку php.lib.

0

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

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

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