post | sidebar | footer

October 29, 2009

解決 Ubuntu 中的 php5-gd 無法使用 imagerotate() 的狀況

會發現這個狀況,是在使用 cool-php-captcha 這個驗證碼套件時出現的。看來是 ubuntu 套件維護小組沒有將這個功能 compiler 進去,原因請見 Recompiling PHP5 With Bundled Support for GD on Ubuntu

所以我們就必須重新 compiler 這部分了。

重建流程
1. 安裝 build tools, debian helpers 及 fakeroot
% apt-get install build-essential debhelper fakeroot

2. 先到 /usr/src 再把 php5 抓下來
% cd /usr/src
% apt-get source php5

3. 安裝 php5 所依存(depend)的套件
% apt-get build-dep php5

4. 到 php5-5.2.3,修改 debian/rules 設定
% cd php5-5.2.3
% vim debian/rules
--with-gd=shared,/usr --enable-gd-native-ttf \
修改為
--with-gd=shared --enable-gd-native-ttf \

5. build php5 所有的套件
% dpkg-buildpackage -rfakeroot

6. 只安裝我們所需的 php5-gd
% cd ..
% dpkg -i php5-gd_5.2.3-1ubuntu6.3_i386.deb

7. 重啟 apache
% /etc/init.d/apache2 restart

參考來源
Recompiling PHP5 With Bundled Support for GD on Ubuntu

No comments: