2012-01-23 12 views
5

Sto progettando di utilizzare Tratti, disponibili in PHP 5.4 su nostra applicazione che richiede Memcache e quindi php_memcache.dllIl modo più semplice per costruire/ottenere php_memcache.dll per PHP 5.4

sto sviluppando su una macchina Windows usando PHP 5.4 l'ultima release candidate.

Non riesco a trovare una build PHP 5.4 di php_memcache.dll, quindi mi piacerebbe sapere come ottenerlo o, in caso contrario, costruirlo da solo (le istruzioni su http://www.php.net/manual/en/install.windows.building.php sembrano un po 'carenti!).

Non ho Visual Studio o alcuno strumento di installazione installato sulla mia macchina (e idealmente non voglio pagare nessuno).

Grazie

+0

Ho lo stesso problema, hanno trovato un mem cache di lavoro dll per 5.4.x? – Eric

risposta

2

Questa pagina documento spiega come farlo: http://php.net/manual/en/install.pecl.windows.php

Ma il modo migliore per raggiungere facilmente questo sarebbe quello di eseguire Ubuntu/Fedora come un sistema operativo virtuale (tramite VirtualBox). Ottenere le versioni più recenti di qualsiasi estensione sarà molto più facile sotto Unix.

Si può ancora sviluppare su Windows e utilizzare una directory condivisa per eseguire il codice php nella VM di Linux.

+0

Grazie per il link. – user894199

+0

Ho seguito le istruzioni (tranne che non ero sicuro sul passaggio 16: configure --disable-all --enable-cli --enable- $ rimane ciò che la variabile $ rimane, quindi rimosso). Dopo l'estrazione http://pecl.php.net/get/memcache e funzionante configure --enable-cli --enable-memcache nmake mi sono bloccato con l'errore c: \ PHP sdk \ php54dev \ vc9 \ x86 \ pecl \ memcache-3.0.6 \ memcache_pool.h (37): errore fatale C1083: impossibile aprire il file include: 'stdint.h': nessun file o directory NMAKE: errore irreversibile U1077: '"C: \ Programmi \ Microsoft Visual Studio 9.0 \ VC \ Bin \ cl.exe"': codice di ritorno '0x2' Stop. Qualche idea? – user894199

+0

Sembra che manchi la libreria c standard. Potrebbe essere un addon con Microsoft Visual Studio. –

3

Sembra che PECL/memcache 3.0.5 e 3.0.6 non vengano compilati correttamente in Windows (almeno non con le istruzioni fornite in PHP's Wiki). La versione 2.2.6 sembra compilare correttamente.

Seguire le istruzioni del Wiki e utilizzare questa stringa di configurazione:

--enable-cli-win32 --disable-zts --disable-isapi --disable-nsapi --without-mssql --without-pdo-mssql --without-pi3web --disable-static-analyze --enable-memcache=shared 

Questo dovrebbe dare un "php_memcache.dll" compatibile con PHP 5.4.0 (VC9, non thread-safe). Queste opzioni (con alcune piccole modifiche) sono state prese dalla configurazione di build dei binari Win32 forniti su PHP.net.

I carichi di estensione senza errori in PHP 5.4.0RC6, ma non ho in realtà (stress) testato in modo significativo ...

Problemi correlati