首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Phalcon devtools不工作

Phalcon devtools不工作
EN

Stack Overflow用户
提问于 2015-05-21 20:27:09
回答 3查看 5.3K关注 0票数 7

我试图在OSX上安装Phalcon Dev工具。我已经安装了Phalcon,而且工作正常。

我遵循了这里的说明:http://docs.phalconphp.com/en/latest/reference/mactools.html

当我在终端中运行命令phalcon时,我得到以下输出:

代码语言:javascript
复制
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脚本中注意到,最后它有:

代码语言:javascript
复制
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是正确的:

代码语言:javascript
复制
which php
/Applications/MAMP/bin/php/php5.5.23/bin/php

通过检查phalcon.php脚本,并使用xdebug,我检测到存在以下问题:

代码语言:javascript
复制
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的错误日志显示:

代码语言:javascript
复制
[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版本是:

代码语言:javascript
复制
PHP 5.5.23 (cli) (built: Apr  9 2015 19:29:27)

如您所见,Phalcon位于正确的目录中:

代码语言:javascript
复制
ls /Applications/MAMP/bin/php/php5.5.23/lib/php/extensions/no-debug-non-zts-20121212
apcu.so
imagick.so
phalcon.so
...

你可以从phpinfo()上看到它已经安装..。

以下命令也给出了不同的结果:

显示已安装的Phalcon:

代码语言:javascript
复制
echo "<?php phpinfo(); ?>" | php > phpinfo.txt && cat phpinfo.txt | grep phalcon

显示Phalcon未安装:

代码语言:javascript
复制
php -m

有什么想法吗?

EN

回答 3

Stack Overflow用户

发布于 2015-11-24 03:53:56

经过多次尝试后,我发现参考文献中显示的代码是错误的:

代码语言:javascript
复制
ln -s ~/phalcon-tools/phalcon.sh ~/phalcon-tools/phalcon
chmod +x ~/phalcon-tools/phalcon

正确的方法可以在github回购中找到

代码语言:javascript
复制
ln -s ~/phalcon-devtools/phalcon.php /usr/bin/phalcon
chmod ugo+x /usr/bin/phalcon

基本上,链接不应该是脚本,而应该是php文件。解决这个问题,我可以正确地运行开发工具。

票数 2
EN

Stack Overflow用户

发布于 2015-07-09 22:16:24

我和你也有同样的问题。只要我将这两行添加到我的~/..bash_profile文件中,我就解决了这个问题。

代码语言:javascript
复制
export PATH=$PATH:/Users/scott/phalcon-tools
export PTOOLSPATH=/Users/scott/phalcon-tools

首先,我只将第一行添加到.bash_profile中,并向您提供了相同的信息。

票数 0
EN

Stack Overflow用户

发布于 2016-04-05 07:36:30

可能在命令行ini文件phalcon没有安装,所以它正在抛出错误。

只需在终端中键入此命令即可。

代码语言:javascript
复制
php --ini

然后检查输出,有趣的行是

代码语言:javascript
复制
Loaded Configuration File:         /etc/php5/cli/php.ini

现在试着检查一下

代码语言:javascript
复制
phalcon.so

不管是不是装在那里。

对于web和cli,提供了不同的phalcon.so文件,因此我们需要在这两个文件中嵌入"phalcon.so“。

因此,phalcon.so包含在您的web php.ini中,因此它在那里运行平稳,而不是命令行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30383734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档