centos 6 下,zephir的安装和使用

zephir或许会开启一个新的PHP编写方式。 在这之前,如果我们要编写php的扩展,一般都是c++/clang/vc等等。 但是现在,我们有了新的选择: zephir.
zephir本身并不是为了替代c++/clang/vc等。 它本质是介于c和php的之间的一个语言,一个桥梁。

下面我们开始安装。 安装环境基于CentOS 6.5, php都是通过yum install安装。 而不是编译安装。
php版本信息:

PHP 5.5. (cli) (built: Dec   ::)
Copyright (c) - The PHP Group
Zend Engine v2.5.0, Copyright (c) - Zend Technologies
with Zend OPcache v7.0.3-dev, Copyright (c) -, by Zend Technologies
with Xdebug v2.2.3, Copyright (c) -, by Derick Rethans

安装系统依赖:

yum install wget git autoconf automake libtool  gcc-c++
     
安装其他依赖的东西: json-c和re2c
json-c安装:
git clone https://github.com/json-c/json-c.git
cd json-c
./autogen.sh
./configure
make
make install

re2c安装:
现在最新的版本是:0.13.6

http://sourceforge.net/projects/re2c/files/re2c/0.13.6/

下载其中的tar.gz文件即可。 (不要下载.zip的文件)

cd ~
wget http://downloads.sourceforge.net/project/re2c/re2c/0.13.7.5/re2c-0.13.7.5.tar.gz
tar zxf re2c-0.13.7.5.tar.gz
cd re2c-0.13.7.5
./configure
make
make install
安装后,可执行文件re2c会放到/usr/local/bin, 把它链接到/usr/bin
cd /usr/bin
ln -s /usr/local/bin/re2c re2c
然后在任何地方执行re2c -v, 应该输出:
[root@QXDev2 ~]# re2c -v
re2c 0.13.
好了,基本东西就绪, 那么我们开始进入整体: zephir的安装。
git clone https://github.com/phalcon/zephir.git
cp -R zephir /usr/local/zephir
cd /usr/local/zephir
./install

得到提示如下:

Parser statistics:  terminals,  nonterminals,  rules
states, parser table entries, conflicts

这样就表明正确了。
下面让我们在任何地方都可以使用zephir命令

cd ~
vi .bashrc
#在最后一行添加:
export PATH=$PATH:/usr/local/zephir/bin
#保存
source .bashrc
zephir help
这个时候应该可以看到:
_____              __    _
/__ / ___ ____ / /_ (_)____
/ / / _ \/ __ \/ __ \/ / ___/
/ /__/ __/ /_/ / / / / / />
/____/\___/ .___/_/ /_/_/_/
/_/ Zephir version 0.2.2a Usage:
command [options] Available commands:
generate Generates C code from the Zephir code
full-clean Cleans the generated object files in compilation
compile Compile a Zephir extension
help Displays this help
install Installs the extension (requires root password)
init [namespace] Initializes a Zephir extension
clean Cleans the generated object files in compilation
version Shows Zephir version Options:
-fno-([a-z0-\-]+) Setting options to Compiler
-W([a-z0-\-]+) Setting warning options to Compiler
到此,我们的安装就结束了。
具体使用请查看后续文章。
 
zephir 英文文档站点:http://zephir-lang.com/types.html

centos 6 下,zephir的安装和使用的更多相关文章

  1. CentOS 7下源码安装MySQL 5.7

    网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...

  2. CentOS 6 下RPM方式安装MySQL5.6

    CentOS 6 下RPM方式安装MySQL5.6 1. 下载Linux对应的RPM包,如:CentOS6.7_64对应的RPM包,如下:[root@mysql ~]# ll总用量 113808-rw ...

  3. Centos系统下Docker的安装

    一.检查内核版本 安装Docker,需要linux内核大于3.10 使用uname -r 来检查 二. Centos系统下Docker的安装 1. 安装需要的软件包 yum install -y yu ...

  4. centOS Linux下用yum安装mysql

    centOS Linux下用yum安装mysql      第一篇:安装和配置MySQL   第一步:安装MySQL   [root@192 local]# yum -y install mysql- ...

  5. 基于CentOS 7下最小化安装的操作系统搭建Zabbix3.0环境

    环境说明 系统版本:CentOS Linux release 7.3.1611 (Core) 内核版本:3.10.0-514.el7.x86_64 Httpd版本:Apache/2.4.6 (Cent ...

  6. Linux(CentOS 7下httpd的安装)

    Linux(CentOS 7下httpd的安装) 自己是个linux小白.最近几天在学linux,看到视频教程中安装源码包httpd所以自己想试一试,安装过程中有很多的错误,在网上找了很久也没找到,要 ...

  7. CentOS 7下源码安装MySQL 5.6

    本文转载,并非原创. 目录 准备工作 运行环境 确认你的安装版本 下载MySQL 安装MySQL 准备安装环境 编译和安装 配置MySQL 单实例配置 单实例配置方法 添加防火墙 启动MySQL 重启 ...

  8. Centos 7下Nagios的安装及配置

    简介 Nagios 是一款自动化运维工具,可以协助运维人员监控服务器的运行状况,并且拥有报警功能.本文章将介绍其安装方法和详细的配置方法. nagios 监控服务应用指南 本地资源:负载,CPU,磁盘 ...

  9. CentOS 系统下使用 yum 安装 Redis

    本文主要介绍在 CentOS 7 系统下使用 yum 安装 Redis 的过程. 更改 yum 源 将 Centos 的 yum 源更换为国内的阿里云源. 首先备份你的原镜像文件,保证出错后可以恢复: ...

  10. CentOS 7 下Docker的安装

    笔者是刚入行1年的新鸟,近期公司开始推Docker技术.这个系列的文章都是基于CentOS7系统下进行讲解的. Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及 ...

随机推荐

  1. Telnet 安装

    Telnet 安装 一.Telnet 安装 (1) 登录目标主机检测 telnet 服务是否正常 [root@localhost ~]# telnet localhost -bash: telnet: ...

  2. easyjweb ejs 2014.2.25

    一 .简单 easyjweb 项目 1. 创建一个web 项目 , 将easyjweb-corejar 包 和required 包下的所有jar 包拷到项目下. 2.写一个 action  .. pa ...

  3. sqlldr 笔记

    表结构 CREATE table sqlloader_test ( f1 char(20), f2 char(20), f3 number(16), f4 date ); 数据文件data.csv 1 ...

  4. PetaPoco与MySQL

    随便写写的,PetaPoco与MySQL一起使用,在一个工控项目中充分使用节省不少开发时间,经历大半年的努力的项目接近完成,客户不认帐,开始需求合同就是个败笔,技术还是仅能解决技术问题而已! 上图上代 ...

  5. C语言程序,找出一个二维数组的鞍点。

    什么是鞍点????? 鞍点就是在一个二维数组中,某一个数在该行中最大,然而其在该列中又是最小的数,这样的数称为鞍点. 昨天突然在书上看到这样的一道题,就自己尝试着写了一个找出一个二维数组中的鞍点. 好 ...

  6. Warning: Attempt to present A on B whose view is not in the window hierarchy!

    昨天写豆瓣发广播Demo的时候,为了写Demo的简单,就使用了Storyboard,结果执行视图跳转时遇到了这个问题: Warning: Attempt to present <UINaviga ...

  7. 2018.10.16 uoj#340. 【清华集训2017】小 Y 和恐怖的奴隶主(矩阵快速幂优化dp)

    传送门 一道不错的矩阵快速幂优化dpdpdp. 设f[i][j][k][l]f[i][j][k][l]f[i][j][k][l]表示前iii轮第iii轮还有jjj个一滴血的,kkk个两滴血的,lll个 ...

  8. Django入门与实践-第16章:用户登录(完结)

    # myproject/settings.py LOGIN_REDIRECT_URL = 'home' EMAIL_BACKEND = 'django.core.mail.backends.conso ...

  9. sql join用法(转)

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只 ...

  10. python 判断是否是空行或注释行

    #coding:utf-8 '''''cdays-4-exercise-6.py 文件基本操作 @note: 文件读取写入, 列表排序, 字符串操作 @see: 字符串各方法可参考hekp(str)或 ...