2009-07-07 9 views
11

Actualmente estoy reescribiendo una extensión PHP que fue originalmente escrita para PHP 4.2.2. Mi problema es hacer que el proceso de compilación/compilación genere un .dll en lugar de compilar la extensión en el núcleo PHP. El entorno es Windows Server 2003. Estoy usando Visual Studio 2008.¿Cómo compilo una extensión para PHP 5.3 para Windows como una DLL?

Utilicé el script EXT_SKEL para generar el marco, y puedo compilar con éxito la extensión en el núcleo de php. Estoy tratando de compilarlo en su lugar como .dll para que pueda distribuirlo fácilmente a mis clientes. ¿Alguien puede indicarme en la dirección correcta cómo decirle al proceso de compilación PHP 5.3 que me gustaría compilar mi extensión como .dll en lugar de estáticamente en PHP?

Para construir el marco de la extensión corro:

  1. php.exeext_skel_win32.php --extname=myextension --proto=myprototypefile.dat
  2. config.w32 Modificado descomentar la línea 'ARG_ENABLE' y crea el valor predeterminado: Enabled
  3. buildconf.bat
  4. cscript /nologo configure.js
  5. nmake

Confirmo que puedo ejecutar los métodos de la extensión desde PHP, sin embargo, no produce un .dll distribuible. en su lugar, compila los métodos en el binario de PHP. ¿Alguien puede señalarme en la dirección correcta?

Respuesta

8

Trate

configure.js --enable-myextension=shared 

edit: también podría ser

configure.js --with-myextension=shared 
+0

Gracias en gran medida por la rápida respuesta! –

Cuestiones relacionadas