誰もがUbuntu 16.04にlaravel 5をインストールしましたか? Ubuntu 16.04に切り替えたばかりで、composerを使用してlaravel 5フレームワークをインストールしようとしています。しかし、プロジェクトを作成しようとするたびに、このエラーが発生します
Your requirements could not be resolved to an installable set of packages.
Problem 1
- laravel/laravel v5.2.0 requires 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].
- laravel/laravel v5.2.15 requires 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].
- laravel/laravel v5.2.23 requires 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].
- laravel/laravel v5.2.24 requires 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].
- laravel/laravel v5.2.27 requires 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].
- laravel/laravel v5.2.29 requires 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].
- laravel/laravel v5.2.31 requires 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].
- 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.
- Installation request for laravel/laravel ^5.2 -> satisfiable by laravel/laravel[v5.2.0, v5.2.15, v5.2.23, v5.2.24, v5.2.27, v5.2.29, v5.2.31].
To enable extensions, verify that they are enabled in those .ini files:
- /etc/php/5.6/cli/php.ini
- /etc/php/5.6/cli/conf.d/10-opcache.ini
- /etc/php/5.6/cli/conf.d/10-pdo.ini
- /etc/php/5.6/cli/conf.d/20-calendar.ini
- /etc/php/5.6/cli/conf.d/20-ctype.ini
- /etc/php/5.6/cli/conf.d/20-exif.ini
- /etc/php/5.6/cli/conf.d/20-fileinfo.ini
- /etc/php/5.6/cli/conf.d/20-ftp.ini
- /etc/php/5.6/cli/conf.d/20-gettext.ini
- /etc/php/5.6/cli/conf.d/20-iconv.ini
- /etc/php/5.6/cli/conf.d/20-json.ini
- /etc/php/5.6/cli/conf.d/20-phar.ini
- /etc/php/5.6/cli/conf.d/20-posix.ini
- /etc/php/5.6/cli/conf.d/20-readline.ini
- /etc/php/5.6/cli/conf.d/20-shmop.ini
- /etc/php/5.6/cli/conf.d/20-sockets.ini
- /etc/php/5.6/cli/conf.d/20-sysvmsg.ini
- /etc/php/5.6/cli/conf.d/20-sysvsem.ini
- /etc/php/5.6/cli/conf.d/20-sysvshm.ini
- /etc/php/5.6/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.
Installation failed, deleting ./composer.json.
私は記事を読みます ここでそのうちの1つ Ubuntu 16.04にはデフォルトでPHP7が付属していますが、PHP5を引き続き使用できます。しかし、PHP7とPHP5の両方を試しても、同じエラーが発生します!何か案は?ありがとう
この質問に大きな関心があるため、Laravel(これはNGINXにあります)を操作するために必要なすべてをインストールするために、更新して小さなbashスクリプトを作成することにしました
https://github.com/emilas44/laravel-5.4-on-Ubuntu/blob/master/script.sh
必要に応じて単純にコピーして編集することができます...スクリプト内に既にインストールされているコンポーネントがある場合は、不要な部分を自由に削除できます。
Laravel 5.2は以下にあります:
Sudo apt-get install git
Sudo apt-get install Zip
Sudo apt-get install tasksel
Sudo tasksel install lamp-server
Sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext
Sudo phpenmod mcrypt
Sudo phpenmod mbstring
Sudo a2enmod rewrite
Sudo systemctl restart Apache2
curl -sS https://getcomposer.org/installer | php
Sudo mv composer.phar /usr/local/bin/composer
Sudo apt-get install phpmyadmin
後でlocalhost/phpmyadminからアクセス可能
cd /var/www/html/
Sudo composer create-project laravel/laravel work --prefer-dist
Sudo chmod -R 777 work (do not set 777 on "live" server!)
Sudo gedit /etc/Apache2/sites-available/work.com.conf
これをそのドキュメント内に貼り付けます
#/etc/Apache2/sites-available/work.com.conf contains following lines
<VirtualHost *:80>
ServerName work.com
DocumentRoot /var/www/html/work/public
<Directory /var/www/html/work/public>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Sudo a2ensite work.com
service Apache2 reload
Sudo gedit /etc/hosts //space between gedit and destination!
#/etc/hosts contents following lines
127.0.0.1 work.com
またはこのコマンドを使用します
Sudo -- sh -c "echo '\n127.0.0.1 \twork.com'>> /etc/hosts"
YouTubeで正しい方法を説明するチュートリアルを作成しました。laravelで作業するために必要なすべてのものを使用しています。リンクは次のとおりです。 https://www.youtube.com/watch?v=A6TdaRIsG6g
これらは、新規アップグレード後にUbuntu Server 16.04にLaravel 5をインストールするために必要な手順です。
Mohammad Barhoushが述べたように、最初にすべてのPHPを完全に削除する必要がありました。
Sudo apt-get -y purge php.*
次にPHPを再インストールしました:
Sudo apt install php libapache2-mod-php
Sudo apt install php-cli
Sudo apt install php-mysql
PHP ver.7.0を再インストールした後、Mohhammadが推奨する追加の関連パッケージをインストールしました。
Sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext php-Gd
そして、MODを有効にしました
Sudo phpenmod mcrypt
Sudo phpenmod mbstring
そして最後に、composerがcomposer update
のZip拡張子を持っていなかったと不平を言っていたので、次をインストールしました。
Sudo apt-get install php7.0-Zip
その後、エラーなく正常に実行されました!
これらは、以前のUbuntu ServerのLTSバージョンからlaravel 5機能を取得するために必要な手順でした。これが役に立てば幸いです!宜しくお願いします :)
-デリック
Php 5.6.11を5.6.21にアップグレードしました。
だから、私の場合、私は実行しなければなりませんでした:
Sudo apt-get install php5.6-mbstring
PS:5.6.11から5.6.21にアップグレードした方法:
Sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
Sudo apt-get update
Sudo apt-get install php5.6
アップグレードの理由: zend_mm_heap破損 composer更新中。
PHP mbstring拡張モジュールは別のパッケージに存在するようになったため、次のことを行う必要があります。
apt-get install php-mbstring
そこで、設定ファイルで手動で何かをする必要があります。 article が本当に役立つことがわかりました。まず、天気を確認する必要がありますmbstring.dllライブラリは、「phpinfo()」関数を使用してシステムに既にインストールされています。有効になっている場合は、 'extension = php_mbstring.dll'のコメントを外す代わりに、php.ini構成ファイルにコメントを付けておくか、Sudo apt-get install php-mbstring php7.0-mbstring
でインストールしない場合
次に、以下を設定します。
; mbstring.language = All
;mbstring.internal_encoding = UTF-8
;mbstring.http_output = UTF-8
;mbstring.encoding_translation = On
;mbstring.func_overload = 0
それだけです。laravelおよびその他すべてのインストール方法など、他のことも知っていると思います。
ご回答ありがとうございました。ようやくこの問題を解決できました。
最初にphpを完全に削除します。
Sudo apt-get -y purge php.*
Phpおよびこれらの重要な関連パッケージを再インストールします。
Sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext
MODを有効にします(lewis4uビデオのおかげ):
Sudo phpenmod mcrypt
Sudo phpenmod mbstring
だから私は上記の男と同じ問題を抱えていたので、php-domをインストールする必要があったので、apt-get install php-dom
を実行しようとしましたが、メッセージが出ました
Package php-dom is a virtual package provided by:
php5.5-xml 5.5.35-1+donate.sury.org~xenial+2
php7.0-xml 7.0.6-1+donate.sury.org~xenial+1
php5.6-xml 5.6.21-1+donate.sury.org~xenial+2
You should explicitly select one to install.
ターミナルには少し新しいので、これは少しわかりにくいですが、unbuntu 16.04をphp7で実行しているので、実行しました:apt-get install php7.0-xml
そしてそれは私のために働いた...それが誰かを助けることを願っています!
oerdnjのソリューションは動作します。mbstring
をインストールした後、php.ini
を実行する前にcomposer install
で有効にする必要があります。私の場合、laravelにはext-mbstringとext-domが必要です。apt-get install php-dom
LaravelドキュメンテーションのようにLaravel 5.4
にUbuntu 16.04
をインストールするには、以下をチェックします。
php -v
、PHPバージョンはPHP >= 5.6.4
でなければなりませんphp -m
およびOpenSSL PHP Extension
のPDO PHP Extension
を使用して端末をチェックインします。ターミナル:Sudo apt install php-mbstring
で、php -m
とMbstring PHP Extension
についてTokenizer PHP Extension
でもう一度確認します。
ターミナル:Sudo apt install php-xml
およびphp -m
のXML PHP Extension
による再確認
ターミナルで次の4つの手順でComposerをダウンロードします。
php -r "copy( ' https://getcomposer.org/installer '、 'composer-setup.php');"
php -r "if(hash_file( 'SHA384'、 'composer-setup.php')=== '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410'; echo echo php ');} echo PHP_EOL; "
php composer-setup.php
php -r "unlink( 'composer-setup.php');"
ターミナルでcomposerを確認します:php composer.phar
ターミナルにLaravelをインストールします。
php composer.phar global require "laravel/installer"
ターミナルの出力は、現在のディレクトリを/home/yourname/.config/composer
に表示し、現在のディレクトリに移動してctrl+h
を押して隠しファイルを表示します。.config
フォルダーに移動してから、次の内容のcomposer
フォルダーに移動します。 composerフォルダーの内容
ターミナルでLaravel project
に/var/www/html
を作成します。
php composer.phar create-project --prefer-dist laravel/laravel /var/www/html/myLaravel
ターミナルでmyLaravelを開き、貼り付けます:php artisan serve
とブラウザーのhttp://127.0.0.1:8000
をコピーします