Как скомпилировать расширение для PHP 5.3 для Windows как DLL?

В настоящее время я переписываю расширение PHP, которое изначально было написано для PHP 4.2.2.. Моя проблема заключается в том, что процесс сборки/компиляции генерирует .dll вместо компиляции расширения в ядро ​​PHP. Среда - это Windows Server 2003. Я использую Visual Studio 2008.

Я использовал EXT_SKEL script для создания фреймворка, и я могу успешно скомпилировать расширение в ядро ​​php. Я пытаюсь скомпилировать его как .dll, поэтому я могу легко распространить его на своих клиентов. Может ли кто-нибудь указать мне в правильном направлении, как сказать процесс сборки PHP 5.3, что я хотел бы скомпилировать мое расширение как .dll вместо статического значения в самом PHP?

Чтобы создать структуру расширения, я запускаю:

  • php.exe ext_skel_win32.php --extname=myextension --proto=myprototypefile.dat
  • Модифицированный config.w32, чтобы раскомментировать строку "ARG_ENABLE" и включить функцию по умолчанию
  • buildconf.bat
  • cscript /nologo configure.js
  • NMAKE

Я подтверждаю, что я могу запускать методы расширения из PHP, однако он не создает дистрибутив .dll. вместо этого он компилирует методы в двоичный файл PHP. Может ли кто-нибудь указать мне в правильном направлении?

Ответ 1

Try

configure.js --enable-myextension=shared

edit: также может быть

configure.js --with-myextension=shared