我试图在OSX上安装Phalcon Dev工具。我已经安装了Phalcon,而且工作正常。
我遵循了这里的说明:http://docs.phalconphp.com/en/latest/reference/mactools.html
当我在终端中运行命令phalcon时,我得到以下输出:
Phalcon Developer Tools Installer
Make sure phalcon.sh is in the same dir as phalcon.php and that you are running this with sudo or as root.
Installing Devtools...
Working dir is: /Users/me/phalcon-tools
Done. Devtools installed!现在我该如何使用devtools?当我输入phalcon commands时,输出与上面的输出完全相同,并继续告诉我它已经安装。
我是不是漏掉了什么?
我在phalcon.sh脚本中注意到,最后它有:
if check_install; then
php "$PTOOLSPATH/phalcon.php" $*
fi因此,如果check_install通过,运行phalcon.php。我试着手动运行这个脚本,但是终端没有发生任何事情。
定义了$PTOOLSPATH。我使用echo $PTOOLSPATH确认了这一点。
我的/usr/bin/env php是正确的,并指向MAMP的PHP。目前我已经安装了使用MAMP的Phalcon。我的PHP是正确的:
which php
/Applications/MAMP/bin/php/php5.5.23/bin/php通过检查phalcon.php脚本,并使用xdebug,我检测到存在以下问题:
if (!extension_loaded('phalcon')) {
throw new Exception(
sprintf(
"Phalcon extension isn't installed, follow these instructions to install it: %s",
Script::DOC_INSTALL_URL
)
);
}所以Phalcon扩展没有加载。不确定为什么它没有在终端中打印异常的输出。但是,PHP的错误日志显示:
[21-May-2015 22:37:48 Europe/Berlin] PHP Fatal error: Class 'Phalcon\Script' not found in /Users/me/phalcon-tools/phalcon.php on line 41现在我很困惑。
编辑:
运行php -m显示Phalcon没有安装。这很奇怪,因为我在我的web应用程序中使用了Phalcon,而且它工作得很好。如您所见,我已经在php.ini中加载了扩展。

我使用的PHP版本是:
PHP 5.5.23 (cli) (built: Apr 9 2015 19:29:27)如您所见,Phalcon位于正确的目录中:
ls /Applications/MAMP/bin/php/php5.5.23/lib/php/extensions/no-debug-non-zts-20121212
apcu.so
imagick.so
phalcon.so
...你可以从phpinfo()上看到它已经安装..。

以下命令也给出了不同的结果:
显示已安装的Phalcon:
echo "<?php phpinfo(); ?>" | php > phpinfo.txt && cat phpinfo.txt | grep phalcon显示Phalcon未安装:
php -m有什么想法吗?
发布于 2015-11-24 03:53:56
发布于 2015-07-09 22:16:24
我和你也有同样的问题。只要我将这两行添加到我的~/..bash_profile文件中,我就解决了这个问题。
export PATH=$PATH:/Users/scott/phalcon-tools
export PTOOLSPATH=/Users/scott/phalcon-tools首先,我只将第一行添加到.bash_profile中,并向您提供了相同的信息。
发布于 2016-04-05 07:36:30
可能在命令行ini文件phalcon没有安装,所以它正在抛出错误。
只需在终端中键入此命令即可。
php --ini然后检查输出,有趣的行是
Loaded Configuration File: /etc/php5/cli/php.ini现在试着检查一下
phalcon.so不管是不是装在那里。
对于web和cli,提供了不同的phalcon.so文件,因此我们需要在这两个文件中嵌入"phalcon.so“。
因此,phalcon.so包含在您的web php.ini中,因此它在那里运行平稳,而不是命令行。
https://stackoverflow.com/questions/30383734
复制相似问题