zoukankan      html  css  js  c++  java
  • mac下搭建phalcon扩展以及phalcon-devtools扩展

    最近安装phalcon扩展遇到一点坑,这里回顾记录下,避免再次踩坑。

    如果使用引擎搜索phalcon关键字最初的几条搜索结果,点击进去使用的均不是官方的phalcon扩展。

    这里不用非官方的phalcon库(以后安装别的什么软件最好都用官方库文件)。

    上github搜索phalcon,进入release页面
    下载https://github.com/phalcon/cphalcon/tags?after=v3.4.5
    下载3.4.4版本(本机是php7.2版本),并解压
    
    kun@kundeMacBook-Pro phalcon_study % ls -l
    total 15720
    dr-xr-xr-x@ 35 kun  staff     1120  6 30  2019 cphalcon-3.4.4
    -r-xr-xr-x@  1 kun  staff  6707840 12  3 23:53 cphalcon-3.4.4.tar.gz

    进入cphalcon-3.4.4/ext目录先后执行phpize和configure命令

    kun@kundeMacBook-Pro cphalcon-3.4.4 % cd build/php7/64bits
    kun@kundeMacBook-Pro ext % whereis phpize
    /usr/bin/phpize
    kun@kundeMacBook-Pro ~ % whereis php-config
    /usr/bin/php-config
    kun@kundeMacBook-Pro ext % ls -l /usr/bin/phpize
    lrwxr-xr-x  1 root  wheel  33 12  8 10:58 /usr/bin/phpize -> /usr/local/opt/php@7.2/bin/phpize
    kun@kundeMacBook-Pro ext % /usr/local/opt/php@7.2/bin/phpize
    Configuring for:
    PHP Api Version:         20170718
    Zend Module Api No:      20170718
    Zend Extension Api No:   320170718
    kun@kundeMacBook-Pro ext % ./configure -with-php-config=/usr/bin/php-config
    checking for grep that handles long lines and -e... /usr/bin/grep
    checking for egrep... /usr/bin/grep -E
    checking for a sed that does not truncate output... /usr/bin/sed
    checking for cc... cc
    checking whether the C compiler works... yes
    checking for C compiler default output file name... a.out
    checking for suffix of executables...
    checking whether we are cross compiling... no
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether cc accepts -g... yes
    ...省略打印
    
    
    kun@kundeMacBook-Pro ~ % php --ini
    Configuration File (php.ini) Path: /usr/local/etc/php/7.2
    Loaded Configuration File: /usr/local/etc/php/7.2/php.ini
    Scan for additional .ini files in: /usr/local/etc/php/7.2/conf.d
    Additional .ini files parsed: /usr/local/etc/php/7.2/conf.d/ext-opcache.ini
    kun@kundeMacBook-Pro ~ % vim /usr/local/etc/php/7.2/php.ini
    #新增扩展配置
    extension=/usr/local/Cellar/php@7.2/7.2.34_1/pecl/20170718/phalcon.so
    
    extension=/usr/local/Cellar/php@7.2/7.2.34_1/pecl/20170718/phalcon.so
    
    #扩展打印
    kun@kundeMacBook-Pro ~ % php --ri phalcon
    
    phalcon
    
    
    Web framework delivered as a C-extension for PHP
    phalcon => enabled
    Author => Phalcon Team and contributors
    Version => 3.4.4
    Build Date => Dec  8 2020 11:23:01
    Powered by Zephir => Version 0.10.16-6826149172
    
    Directive => Local Value => Master Value
    phalcon.db.escape_identifiers => On => On
    phalcon.db.force_casting => Off => Off
    phalcon.orm.events => On => On
    phalcon.orm.virtual_foreign_keys => On => On
    phalcon.orm.column_renaming => On => On
    phalcon.orm.not_null_validations => On => On
    phalcon.orm.exception_on_failed_save => Off => Off
    phalcon.orm.enable_literals => On => On
    phalcon.orm.late_state_binding => Off => Off
    phalcon.orm.enable_implicit_joins => On => On
    phalcon.orm.cast_on_hydrate => Off => Off
    phalcon.orm.ignore_unknown_columns => Off => Off
    phalcon.orm.update_snapshot_on_save => On => On
    phalcon.orm.disable_assign_setters => Off => Off

    到此phalcon扩展安装成功,接下来安装phalcon-devtools辅助扩展

    进入下载页面,这里是php7.2下载3.4.9版本。
    https://github.com/phalcon/phalcon-devtools/tags
    
    https://github.com/phalcon/phalcon-devtools/archive/v3.4.9.tar.gz
    下载解压
    
    kun@kundeMacBook-Pro phalcon-devtools-3.4.9 % cd ide
    kun@kundeMacBook-Pro ide % head -30 gen-stubs.php
    <?php
    
    /**
     * This scripts generates the stubs to be used on IDEs
     *
     * Specify CPHALCON_DIR env variable to point to the dev/ directory in the Phalcon source code
     *
     * *nix:    CPHALCON_DIR=/path/to/cphalcon/ext/ php ide/gen-stubs.php
     *  Win:    set CPHALCON_DIR=C:PathTocphalconext php ide/gen-stubs.php
     *
     * Alternative stubs generation
     *
     * cd cphalcon
     * zephir stubs
     */
    
    #手动新增编辑你的地址
    define('CPHALCON_DIR' , '/Users/kun/www/phalcon_study/cphalcon-3.4.4/ext/');
    putenv('CPHALCON_DIR=/Users/kun/www/phalcon_study/cphalcon-3.4.4/ext/');
    #手动新增编辑你的地址
    #创建phalcon命令软链
    kun@kundeMacBook-Pro ide % sudo ln -s /Users/kun/www/phalcon_study/phalcon-devtools-3.4.9/phalcon /usr/bin/phalcon
    
    #生成php文件
    kun@kundeMacBook-Pro ide % php gen-stubs.php
    
    #打印可见新增3.4.4目录
    kun@kundeMacBook-Pro ide % ls -l
    total 48
    dr-xr-xr-x  3 kun  staff    96 12  8 11:31 3.4.4
    -r-xr-xr-x@ 1 kun  staff  9757 12  4 18:13 gen-stubs.php
    -r-xr-xr-x@ 1 kun  staff  9575 12  4 17:18 gen-stubs.php.bak.12-04
    dr-xr-xr-x@ 4 kun  staff   128 12  8  2019 phpstorm

    phpstorm配置phalcon-devtools

    phpstorm->Preferences->tools->Commands Line Tool,点击+符号,填写路径

    include Path一开始为空,需要自己点击下方+号添加,路径是php gen-stubs.php命令生成的3.4.4目录下phalcon目录。

    好了,到现在系统支持phalcon扩展,phpstorm支持phalcon-devtools扩展了

  • 相关阅读:
    解析XML技术
    XML名命空间
    XML解析器
    java列表组件鼠标双击事件的实现
    XML(可拓展标记语言)基本概念
    数据包式套接字:基于UDP协议的Socket网络编程
    流式套接字:基于TCP协议的Socket网络编程(案例3)
    剑指 Offer 58
    剑指 Offer 58
    剑指 Offer 57
  • 原文地址:https://www.cnblogs.com/wscsq789/p/14102013.html
Copyright © 2011-2022 走看看