2014-06-05 46 views
1

我不能相信這並沒有被問過,但這裏有雲:在Windows上安裝PHP x差值與WAMP

我試圖在Windows上使用WAMP和PHP版本(64位)安裝x差值5.3。

pecl.php.net不提供該組合的.dll文件,所以我嘗試下載5.3 x86文件和5.5 x64版本,但都沒有工作。 86版本中生成的Apache日誌以下警告:

[星期四6月5日15點55分47秒2014] [警告]初始化:會話緩存未配置[提示:SSLSessionCache] PHP的警告:PHP啓動:無法加載動態庫'c:/wamp/bin/php/php5.3.13/ext/php_xdiff.dll' - %1不是有效的Win32應用程序。\ r \ n在未知的行0上
警告:PHP啓動:無法加載動態庫'c:/wamp/bin/php/php5.3.13/ext/php_xdiff.dll' - %1不是有效的Win32應用程序。

未知上線

x64版本生成這樣的警告:

[星期四6月5日15點58分16秒2014] [警告]初始化:會話緩存未配置[提示:SSLSessionCache] PHP警告:PHP啓動:無法加載動態庫'c:/wamp/bin/php/php5.3.13/ext/php_xdiff.dll' - 找不到指定的模塊。 \ r \ n在線0的未知
警告:PHP啓動:無法加載動態庫'c:/wamp/bin/php/php5.3.13/ext/php_xdiff.dll' - 指定的模塊找不到。在線

此時

未知,我回去和閱讀自述文件更貼切一點,發現下面一行:

這個擴展需要libxdiff(http://www.xmailserver.org/xdiff-lib.html)。

好的,夠公平的。繼this page我編譯libxdiff的意見,但後來我到閱讀

一旦編譯,你需要所有的頭文件和庫複製到相應的PHP庫目錄的步驟。

我不知道什麼是「合適的PHP庫目錄」,也不知道我應該複製哪些文件,即使丟失的libxdiff是問題(或者真正的問題是。我使用的DLL文件只是與PHP 5.3 x64不兼容,我應該試圖編譯PECL擴展而不是libxdiff)。

有沒有人有任何建議?

回答

1

好的,憑藉此消息,我假設您正在運行32位Wampserver。沒關係,32位代碼在64位操作系統上運行,但不是相反。

PHP的警告:PHP啓動:無法加載動態庫 'C:/wamp/bin/php/php5.3.13/ext/php_xdiff.dll' - 。%1不是有效的Win32 應用 \ r \ n在未知在線0

所以,你需要下載因爲這樣WampServer的php_xdiff

的32位版本的Apache配置PHP &你需要Thread Safe DLL IE下載文件名包含-ts-而不是-nts-

由於您試圖將其添加到PHP5.3.x中,您可能需要使用VC9編譯的版本,除非PHP5.3.you_dont_specify太舊,它會使用VC6編譯,在這種情況下,我不確定您的位置可以從中獲得一個版本。在這種情況下,您可能會考慮至少升級您的Apache和PHP版本。

php_xdiff from here

pecl dependancies compiled libraries from here, like libxdiff

+0

我使用PHP 5.3.13。不幸的是,我嘗試了線程安全和非線程安全的dll,並且都收到了同樣的錯誤。另外,我仍然不確定如何處理libxdiff庫。我看到zip文件包含bin,include和lib目錄,但是在我的WAMP文件夾中沒有看到任何相應的目錄。 – Swiftheart

+0

嘗試把它放在Apachex.y.z文件夾中。沒有發現這可能會解釋爲什麼擴展不會運行。 – RiggsFolly

+1

啊,好的。我沒有意識到他們進入了Apache文件夾。但是,即使在將PECL依賴關係放入Apache文件夾後,我仍然得到「不是有效的Win32應用程序」錯誤。還有什麼建議? :( – Swiftheart