2015-05-21 3 views
6

Я пытаюсь установить Phalcon Dev Tools на OSX. У меня установлен Phalcon, и он работает нормально.Phalcon DevTools не работает

Я следовал инструкции отсюда: 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 правильно и указывает на PHP MAMP в. На данный момент у меня установлен Phalcon с использованием MAMP. Мой 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 

Теперь я в тупике.

Edit:

Запуск php -m показал мне Phalcon не установлен. Что странно, потому что я использую Phalcon в своем веб-приложении, и он отлично работает. Как вы можете видеть, я загрузил расширение в php.ini.

enter image description here

версия 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() он установлен ...

enter image description here

следующие команды и дают разные результаты тоже:

Показывает Phalcon, как установлено:

echo "<?php phpinfo(); ?>" | php > phpinfo.txt && cat phpinfo.txt | grep phalcon 

Показывает Phalcon не установлен:

php -m 

Любые идеи?

ответ

0

У меня такая же проблема с вами. и я решил это, пока я добавляю эту две строки в файл ~/.bash_profile.

export PATH=$PATH:/Users/scott/phalcon-tools 
export PTOOLSPATH=/Users/scott/phalcon-tools 

Сначала я добавляю первую строку в .bash_profile, и у меня есть такая же информация.

1

Перепробовав много, я узнал, что код, показанный в reference неправильно:

ln -s ~/phalcon-tools/phalcon.sh ~/phalcon-tools/phalcon 
chmod +x ~/phalcon-tools/phalcon 

Надлежащим образом можно найти в github repo:

ln -s ~/phalcon-devtools/phalcon.php /usr/bin/phalcon 
chmod ugo+x /usr/bin/phalcon 

В принципе, связь не должен быть скриптом, а php-файлом. Исправляя это, я мог бы запустить инструмент dev правильно.

+0

im geting the issue 'ubuntu @ ip-000-31-14-000: ~ $ sudo chmod ugo + x/usr/bin/phalcon chmod: не может работать на висячей символической ссылке '/ usr/bin/phalcon'' –

0

Может быть в командной строке ini файл phalcon не установлен, поэтому он бросает ошибку.

просто введите эту команду в терминал.

php --ini 

затем проверьте вывод интересная линия

Loaded Configuration File:   /etc/php5/cli/php.ini 

теперь попробуйте проверить, что

phalcon.so 

загружается там хорошо или нет.

как для web, так и для cli есть файл phalcon.so, поэтому нам нужно влюбить «phalcon.so» в оба файла.

так phalcon.so включен в ваш веб-сайт php.ini, поэтому его работа гладко там, а не в командной строке, я думаю.

Смежные вопросы