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,点击+符号,填写路径

mac下搭建phalcon扩展以及phalcon-devtools扩展

mac下搭建phalcon扩展以及phalcon-devtools扩展

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

mac下搭建phalcon扩展以及phalcon-devtools扩展

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