2016-05-02 7 views
19

У меня есть проект в Laravel-5.1, и я изменил свою платформу с win10 на Ubuntu.ошибка при обновлении Composer

Показаны ошибки:

Loading composer repositories with package information

Updating dependencies (including require-dev)

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

Problem 1 
- laravel/framework v5.2.9 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.8 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.7 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.6 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.5 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.4 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.31 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.30 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.3 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.29 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.28 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.27 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.26 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.25 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.24 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.23 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.22 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.21 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.20 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.2 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.19 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.18 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.17 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.16 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.15 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.14 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.13 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.12 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.11 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.10 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.1 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.0 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- laravel/framework v5.2.30 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. 
- Installation request for laravel/framework 5.2.* -> satisfiable by laravel/framework[v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.4, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9]. 

To enable extensions, verify that they are enabled in those .ini files: 
- /etc/php/7.0/cli/php.ini 
- /etc/php/7.0/cli/conf.d/10-mysqlnd.ini 
- /etc/php/7.0/cli/conf.d/10-opcache.ini 
- /etc/php/7.0/cli/conf.d/10-pdo.ini 
- /etc/php/7.0/cli/conf.d/20-calendar.ini 
- /etc/php/7.0/cli/conf.d/20-ctype.ini 
- /etc/php/7.0/cli/conf.d/20-exif.ini 
- /etc/php/7.0/cli/conf.d/20-fileinfo.ini 
- /etc/php/7.0/cli/conf.d/20-ftp.ini 
- /etc/php/7.0/cli/conf.d/20-gettext.ini 
- /etc/php/7.0/cli/conf.d/20-iconv.ini 
- /etc/php/7.0/cli/conf.d/20-json.ini 
- /etc/php/7.0/cli/conf.d/20-mysqli.ini 
- /etc/php/7.0/cli/conf.d/20-pdo_mysql.ini 
- /etc/php/7.0/cli/conf.d/20-phar.ini 
- /etc/php/7.0/cli/conf.d/20-posix.ini 
- /etc/php/7.0/cli/conf.d/20-readline.ini 
- /etc/php/7.0/cli/conf.d/20-shmop.ini 
- /etc/php/7.0/cli/conf.d/20-sockets.ini 
- /etc/php/7.0/cli/conf.d/20-sysvmsg.ini 
- /etc/php/7.0/cli/conf.d/20-sysvsem.ini 
- /etc/php/7.0/cli/conf.d/20-sysvshm.ini 
- /etc/php/7.0/cli/conf.d/20-tokenizer.ini 
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode. 

Композитор/JSON.

{ 
"name": "laravel/laravel", 
"description": "The Laravel Framework.", 
"keywords": ["framework", "laravel"], 
"license": "MIT", 
"type": "project", 
"require": { 
    "php": ">=5.5.9", 
    "laravel/framework": "5.2.*", 
    "infyomlabs/laravel-generator": "dev-master", 
    "laravelcollective/html": "5.2.*", 
    "infyomlabs/core-templates": "dev-master", 
    "infyomlabs/swagger-generator": "dev-master", 
    "jlapp/swaggervel": "dev-master", 
    "doctrine/dbal": "~2.3", 
    "infyomlabs/generator-builder": "dev-master", 
    "yajra/laravel-datatables-oracle": "~6.0", 
    "barryvdh/laravel-ide-helper": "^2.1", 
    "infyomlabs/adminlte-templates": "dev-master" 
}, 
"require-dev": { 
    "fzaninotto/faker": "~1.4", 
    "mockery/mockery": "0.9.*", 
    "phpunit/phpunit": "~4.0", 
    "symfony/css-selector": "2.8.*|3.0.*", 
    "symfony/dom-crawler": "2.8.*|3.0.*" 
}, 
"autoload": { 
    "classmap": [ 
     "database" 
    ], 
    "psr-4": { 
     "App\\": "app/" 
    } 
}, 
"autoload-dev": { 
    "classmap": [ 
     "tests/TestCase.php" 
    ] 
}, 
"scripts": { 
    "post-root-package-install": [ 
     "php -r \"copy('.env.example', '.env');\"" 
    ], 
    "post-create-project-cmd": [ 
     "php artisan key:generate" 
    ], 
    "post-install-cmd": [ 
     "Illuminate\\Foundation\\ComposerScripts::postInstall", 
     "php artisan optimize" 
    ], 
    "post-update-cmd": [ 
     "Illuminate\\Foundation\\ComposerScripts::postUpdate", 
     "php artisan optimize" 
    ] 
}, 
"config": { 
    "preferred-install": "dist" 
} 

}

+0

Здравствуйте, @kkpatel, пожалуйста, приложите минимальный рабочий пример, что вы сделали, чтобы исправить вашу проблему. –

+0

@ Andy K необходимо установить mbstring, yum и xml для php7.0 и изменить свеклу в файле php.ini. –

+0

Это Джеймс дает вам ответ. Не то, что вы сделали, чтобы найти проблему –

ответ

55

Ваше сообщение об ошибке довольно четко о том, что происходит не так:

laravel/framework v5.2.9 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.

Есть ли у вас mbstring установлен на вашем сервере и включен ли?

Вы можете установить mbstring как часть пакета libapache2-мод-php5:

sudo apt-get install libapache2-mod-php5

Или автономный с:

sudo apt-get install php-mbstring

Установка также позволит ей, однако вы также может включить его, отредактировав файл php.ini и удалите ;, который комментирует его, если он уже установлен.

Если это на вашей локальной машине, выполните следующие шаги, чтобы установить это в своей среде.

+0

, работая сейчас, вы дали мне убедительный ключ. спасибо –

+0

Исправьте меня, если я ошибаюсь: * и удалите ';' комментируя это * вы имели в виду * раскомментировать его *, так как полуколонок представляет комментарий, не так ли? –

+0

@SaiyanPrince я отредактировал свой ответ - но я хотел сказать, что, имея в своем распоряжении двоеточие, комментируя это, – James

16

для php7 вы можете сделать это:

sudo apt-get install php-gd php-xml php7.0-mbstring 
+0

для php 7.2 Я использовал sudo apt-get install php-gd php-xml php7.2-mbstring –

+1

Наконец-то! Большое вам спасибо, добрый сэр. – Zariweya

+0

Спасибо, это сработало для меня. –

0

много хороших ответов уже Ubuntu. Я нахожусь в Linux и имею ту же проблему, но ни одна из приведенных выше команд не работала для меня.

С Linux и php70 я использовал следующую команду, которая работала здорово:

sudo yum install php70-mbstring -y

0

После установки пакетов из заданных ответов, я все еще получаю некоторые ошибки, то я устанавливаю следующий пакет, и он отлично работает:

  • PHP-XML

для конкретной версии:

  • php7.0-XML

команда для PHP 7,0

sudo apt-get install php7.0-xml 

в некоторых случаях также необходим пакет, php7.0-общие. установите его так же, как указано выше.

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