Welcome 微信登录

首页 / 操作系统 / Linux / 64位Linux环境安装PHP TCC 扩展方法

近日发现了一个很有用的PHP扩展,它可以让PHP直接执行C代码,无需编译。TCC(Tiny C Compiler)是一个C编译器,支持直接执行C源代码。关于TCC的介绍这里不多说,刚开始在32位Ubuntu下安装,很顺利就装了,不过在64位CentOS上安装时却遇到很多错误,花了差不多半天的时间终于搞定了。下面详细讲一下我在64们CentOS上安装tcc 的 php扩展中遇到的问题以及解决办法一、安装TCC编译器从官网 http://bellard.org/tcc/ 下载源码,编译安装。注意不要直接从官网那里下载源码,那里的代码在make编译完,执行make test 时会报错,如下:
  1.  ------------ test3 ------------  
  2. ../tcc -B.. -DTCC_TARGET_X86_64 -run ../tcc.c -B.. -DTCC_TARGET_X86_64 -run ../tcc.c -B.. -DTCC_TARGET_X86_64 -run ../tcc.c -B.. -run tcctest.c > test.out3  
  3. tcc: undefined symbol "alloca"  
  4. make[1]: *** [test3] Error 255  
需要直接从版本库中下载已经修复此错误的版本,可以下载最新的
  1. wget http://repo.or.cz/w/tinycc.git/snapshot/f98c2306a0857ad3f8800f91e0554a27adc7f675.tar.gz  
  2.   
  3. tar -zxvf f98c2306a0857ad3f8800f91e0554a27adc7f675.tar.gz  
  4.   
  5. cd tinycc  
  6.   
  7. ./configure --prefix=/usr  
版本库地址 http://repo.or.cz/w/tinycc.git我下载的文件是2012-04-18日提交的版本,命令如下: 下面我们要编辑一下Makefile文件,不然后面安装php_tcc模块时编译会无法通过
  1. vim Makefile  
找到 ”libtcc.a: $(LIBTCC_OBJ)“ 所在行的上一行代码应该是
  1. $(CC) -o $@ -c $< $(NATIVE_DEFINES) $(CFLAGS)  
将这一行的最后加上 "-fPIC”,即改为
  1. $(CC) -o $@ -c $< $(NATIVE_DEFINES) $(CFLAGS) -fPIC  
保存退出
  1. make  
中间可能会报 make: texi2html: Command not found这个是生成html帮助文档的,可以忽略,需要的话可以先 texi2html 然后重新make
  1. yum install texi2html  
没有make错误就继续执行下面命令
  1. make test  
  2. make install  
  • 1
  • 2
  • 3
  • 下一页
LaTeX使用--XeLaTeX入门基础(一)Linux下配置Android SDK相关资讯      Linux安装教程 
  • 制做OEL/CentOS Linux三合一U盘安  (12/28/2012 11:42:50)
  • Linux内核编译与安装  (10/04/2012 09:37:11)
  • Linux安装卸载软件  (09/14/2012 09:36:28)
  • U盘安装Linux开机无法启动解决方法  (10/07/2012 08:55:52)
  • Linux中源代码软件安装  (10/03/2012 13:26:00)
  • Linux安装JRE Tomcat配置Java环境  (08/02/2012 15:27:11)
本文评论 查看全部评论 (0)
表情: 姓名: 字数