Search code examples
laravelsynology

Can't install Laravel on Synology NAS (DSM 6) due to missing PHP extension


I'm trying to install Laravel on Web Station in my Synology NAS with DSM 6. After installing composer I run the command composer create-project laravel/laravel web-project but all I got is this error.

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.

Also checked my Web Station config and saw that the tokenizer extension is missing but I see no option to install it.

enter image description here

So, my question is: How can I add the tokenizer extension to PHP on my Synology NAS? PHP version is 5.6.

Thanks


Solution

  • You have to use php56 instead of php command. Exemple: php56 composer.phar create-project laravel/laravel theproject "5.2.*"