【问题标题】:Can't install Laravel on Synology NAS (DSM 6) due to missing PHP extension由于缺少 PHP 扩展,无法在 Synology NAS (DSM 6) 上安装 Laravel
【发布时间】:2017-02-21 05:19:51
【问题描述】:

我正在尝试使用 DSM 6 在我的 Synology NAS 中的 Web Station 上安装 Laravel。安装 composer 后我运行命令 composer create-project laravel/laravel web-project 但我得到的只是这个错误。

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/framework v5.3.0 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.1 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.10 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.11 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.12 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.13 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.14 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.15 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.16 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.17 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.18 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.2 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.3 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.4 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.5 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.6 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.7 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.8 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.9 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - classpreloader/classpreloader 3.0.0 requires nikic/php-parser ^1.0|^2.0 -> satisfiable by nikic/php-parser[v1.0.0, v1.0.1, v1.0.2, v1.1.0, v1.2.0, v1.2.1, v1.2.2, v1.3.0, v1.4.0, v1.4.1, v2.0.0, v2.0.1, v2.1.0, v2.1.1].
    - nikic/php-parser v2.1.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v2.1.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v2.0.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v2.0.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.4.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.4.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.3.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.2.2 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.2.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.2.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.1.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.0.2 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.0.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.0.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - Installation request for laravel/framework 5.3.* -> satisfiable by laravel/framework[v5.3.0, v5.3.1, v5.3.10, v5.3.11, v5.3.12, v5.3.13, v5.3.14, v5.3.15, v5.3.16, v5.3.17, v5.3.18, v5.3.2, v5.3.3, v5.3.4, v5.3.5, v5.3.6, v5.3.7, v5.3.8, v5.3.9].

  To enable extensions, verify that they are enabled in those .ini files:
    - /etc/php/php.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

还检查了我的 Web Station 配置,发现 tokenizer 扩展丢失了,但我看不到安装它的选项。

所以,我的问题是:如何在我的 Synology NAS 上将 tokenizer 扩展添加到 PHP? PHP版本是5.6。

谢谢

【问题讨论】:

  • 这是否允许您通过 cli 访问?

标签: laravel synology


【解决方案1】:

你必须使用 php56 而不是 php 命令。 示例:php56 composer.phar create-project laravel/laravel theproject "5.2.*"

【讨论】:

  • 这不是版本问题,php和laravel都没有。要安装 laravel,它需要你有一些 php 扩展,而他显然没有。
  • 实际上,这交易成功了。使用 php56 而不是 php 允许我创建一个 Laravel 项目。似乎 Synology NAS 有两个不同版本的 PHP,只有一个使用 php56 命令具有必要的扩展。谢谢:)
  • 重要。您必须在 /usr/local/bin 中安装 composer 作为系统的一部分
【解决方案2】:

运行composer self-update,然后尝试在新文件夹中创建一个项目。

失败了,你可以把 laravel 的版本改成下面的那个,比如composer create-project laravel/laravel web-project "5.2.*"

【讨论】:

  • 它总是失败,即使使用 Laravel 5.2。
  • 如果你有一个 xampp o mamp 来开发网络应用程序,卸载它并再次下载其中一个然后再次安装,我认为在安装 php 时缺少一些档案。
  • 这不是作曲家的问题,而是他的php模块。他需要以某种方式访问​​他的 Synology 上的命令行或界面,以便安装缺失的模块。对于我搜索的内容,他可以使用 ikpg 访问它(如何访问它?我不知道...)。
猜你喜欢
  • 2018-12-23
  • 2023-01-10
  • 2021-11-12
  • 2015-09-25
  • 2018-04-14
  • 1970-01-01
  • 2011-06-14
  • 1970-01-01
  • 2023-03-15
相关资源
最近更新 更多