2013-12-05 2 views
1

Я пытаюсь использовать WP-CLI с cygwin. WP-CLI установлен успешно, но при попытке запустить любой из его команды в Cygwin терминале, например wp --info, это дает мне эти предупреждения:Как заставить cygwin использовать правильные пути?

MS-DOS style path detected: C:\cygwin\home\Evaldas\.wp-cli\vendor\wp-cli\wp-cli\php\boot-fs.php 
Preferred POSIX equivalent is: /home/Evaldas/.wp-cli/vendor/wp-cli/wp-cli/php/boot-fs.php 

и:

include(/home/php/wp-cli.php): 
failed to open stream: No such file or directory in /home/Evaldas/C:\cygwin\home\Evaldas\.wp-cli\vendor\wp-cli\wp-cli\php\boot-fs.php on line 17 

Файл boot-fs.php определяет путь как так:

define('WP_CLI_ROOT', dirname(__DIR__)); 
include WP_CLI_ROOT . '/php/wp-cli.php'; 

Очевидно, что путь somewhy в два раза и в неправильном формате, поэтому вопрос, как я настроить пути для Cygwin в Работа?

ответ

1

Ваш __DIR__ определен в формате MS-DOS, потому что ваша PHP-программа установлена ​​под Windows, и она определяет константу __DIR__, а не Cygwin. Однако вы можете заставить это работать, выполнив следующие действия, если это разрешено в вашей среде.

  1. Удалите PHP для Windows.
  2. Чтобы добавить порты Cygwin в качестве источника, следуйте инструкциям на http://sourceware.org/cygwinports/. Я добавил один из зеркальных сайтов, ftp://mirrors.kernel.org/sources.redhat.com/cygwinports/.
  3. Запустите программу cygstart, предлагая и устанавливая PHP и любые расширения, которые вам нравятся как порт Cygwin, который специально модифицирован для работы в среде Cygwin.
  4. Создайте тестовую программу test.php со строкой, которая говорит echo __DIR__; и запускает ее изнутри Cygwin. Убедитесь, что при запуске test.php он отображает путь в формате в стиле Cygwin, например/cygdrive/c/..., а не в формате Windows C: ....
Смежные вопросы