v8js 是 PHP 嵌入 Google V8 JavaScript 引擎的擴充模組,編譯安裝對工具鏈版本極其敏感。經實測,以下版本組合在 CentOS 5.11/6.6 x64 上可行:
重要:CentOS 5 因 glibc 版本過低,無法編譯新版 V8,必須使用舊版組合;CentOS 6/7 較新環境可嘗試新版本。
# 1. 取得 V8 原始碼 wget https://github.com/v8/v8-git-mirror/archive/3.15.5.tar.gz tar -xzf 3.15.5.tar.gz cd v8-git-mirror-3.15.5/ # 2. 下載依賴並編譯(ia32 32位元;x64 系統請用 x64.release) make dependencies make ia32.release library=shared -j4 # 3. 安裝庫與頭文件 cp out/ia32.release/lib.target/libv8.so /usr/lib/ cp include/v8* /usr/include/
# 直接透過 PECL 安裝舊版相容版本 pecl install v8js-0.1.3
contrib/download_prerequisites 可自動抓取 GMP/MPFR/MPC 依賴yum install glibc-devel.i686 libstdc++.i686
make -j4 雖加速但易觸發 internal compiler error,建議移除 -j 參數單執行緒編譯libv8.so:
make x64.release library=shared
php -m | grep v8js # 或 php -r "echo 'V8 version: ' . V8Js::getV8Version();"
Node.js 微服務 + PHP HTTP 呼叫,避免嵌入 V8 的維護地獄php-v8 或 v8js 新版(需 PHP 7+、V8 6+)v8js 安裝屬於高難度系統整合任務,建議非必要場景評估替代架構,若必須使用請嚴格遵循版本矩陣並保留編譯日誌以利除錯。