用gd for ubuntu 12.04编译php5时出错

我需要imageantialias()在我build立的服务器上工作。 我之前已经编写过PHP,但由于某种原因,我再也无法做到了。 我跑了这些步骤来尝试:

  1. apt-get source php5
  2. apt-get build-dep php5
  3. cd php5-*
  4. nano debian/rules
  5. find这一行--with-gd=shared,/usr --enable-gd-native-ttf \并移除,/usr
  6. 保存并退出
  7. nano debian/setup_mysql.sh
  8. searchStart the daemon
  9. mysqld之后添加–user=root
  10. 保存并退出
  11. dpkg-buildpackage –rfakeroot -us –uc -d

然后运行很长时间,然后在这里结束:

 make[1]: Leaving directory `/usr/src/php5-5.3.10/cgi-build' sed -i -e 's/-d output_buffering=1 -d open_basedir="" -d safe_mode=0/-d output_buffering=1 -d open_basedir="" -d safe_mode=0 -d memory_limit="-1"/' \ /usr/src/php5-5.3.10/pear-build/usr/bin/pear && \ sed -i -e 's/-d output_buffering=1 -d safe_mode=0/-d output_buffering=1 -d open_basedir="" -d safe_mode=0 -d memory_limit="-1"/' \ /usr/src/php5-5.3.10/pear-build/usr/bin/pecl && \ sed -i -e 's/-d memory_limit="-1"//' \ -e 's/-d output_buffering=1 -d open_basedir="" -d safe_mode=0/-d output_buffering=1 -d open_basedir="" -d safe_mode=0 -d memory_limit="-1"/' \ /usr/src/php5-5.3.10/pear-build/usr/bin/peardev sed -i -re "s#('PEAR_CONFIG_SYSCONFDIR', PHP_SYSCONFDIR)#\1 . '/pear'#" /usr/src/php5-5.3.10/pear-build/usr/share/php/PEAR/Config.php patch -s -d /usr/src/php5-5.3.10/pear-build/usr/share/php/ -p1 -i /usr/src/php5-5.3.10/debian/patches/PEAR-Builder-print-info-about-php5-dev.patch touch build-pear-stamp mkdir -p temp_session_store # start our own mysql server for the tests /bin/sh debian/setup-mysql.sh 2963 /usr/src/php5-5.3.10/mysql_db make: *** [test-results.txt] Error 1 dpkg-buildpackage: error: debian/rules build gave error exit status 2 

我尝试了它,而不修改setup-mysql.sh ,但同样的事情发生。 我不确定为什么这不起作用。 我知道我最后一次这样做,我有很多麻烦。 此外,我已经在两个单独的12.04服务器上尝试过这个问题。

只是觉得我会把这个放在那里,让其他人也有这个问题。 我不得不在Ubuntu服务器上修复这个相同的问题, 这篇文章实际上涵盖了这个解决scheme。

简而言之:

错误:

 make: *** [test-results.txt] Error 1 dpkg-buildpackage: error: debian/rules build gave error exit status 2 

解决scheme(如上文所述):

这是因为mysql服务器拒绝在根目录下运行

 $ sudo vim debian/setup-mysql.sh 

在这个文件中注释启动服务器的行,并复制命令,添加“-user = root”参数:

 # Start the daemon #$mysqld > $datadir/run.log 2>&1 & #add root user $mysqld --user=root > $datadir/run.log 2>&1 & 

最后:

 $ sudo dpkg-buildpackage -rfakeroot