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. laravel的foreach

    1.控制器 2.模板

  2. Zookeeper 系列(四)ZKClient API

    Zookeeper 系列(四)ZKClient API 环境准备: <dependency> <groupId>com.101tec</groupId> <a ...

  3. Tree Representation Implementation & Traversal

    https://github.com/Premiumlab/Python-for-Algorithms--Data-Structures--and-Interviews/blob/master/Tre ...

  4. 482. License Key Formatting

    static int wing=[]() { std::ios::sync_with_stdio(false); cin.tie(NULL); ; }(); class Solution { publ ...

  5. java,arduino,C#之间的一些编码转换

    1.C#-> Encoding.UTF8.GetBytes( "abc中") ->[97,98,99,228,184,173] java->byte[] bs= ...

  6. time & datetime 模块

    在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime,calendar(很少用,不讲),下面分别来介绍. 在开始之前,首先要说明几点: 一 ...

  7. python 实现排列组合

    1.python语言简单.方便,其内部可以快速实现排列组合算法,下面做简单介绍. 2.一个列表数据任意组合 2.1主要是利用自带的库 #_*_ coding:utf-8 _*_ #__author__ ...

  8. [转] ubuntu安装Sublime Text 3并使用SublimeClang插件

    原文地址:https://blog.csdn.net/cywosp/article/details/32721011 3. 安装强大的SublimeClang插件 SublimeClang是Subli ...

  9. 关于CI/CD/CD (Continuous Integration/Continuous Delivery/Continuous Deployment)

    Continuous Integration (CI) Continuous integration (CI) is the process that ensures the stability of ...

  10. 【原创】Self-Contained Container(自包含容器)

    自包含容器是一种自包含的结构,很有趣.需要使用模板类,但只有在模板类型是该类的子类时,才使该类具有自包含的结构.这种结构从数据结构的角度看比较有用.通常的树类中的模板通常是“数据”的概念,即模板不参与 ...