Quelqu'un a installé laravel 5 sur Ubuntu 16.04? Je viens de passer à Ubuntu 16.04 et j'essaie d'installer le framework laravel 5 à l'aide de composer. Mais chaque fois que j'essaie de créer un projet, cela me donne ces erreurs
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.
J'ai lu des articles ici l'un d'eux disons qu'Ubuntu 16.04 est livré avec PHP7 par défaut mais nous pouvons toujours utiliser PHP5. Cependant, j'ai essayé à la fois PHP7 et PHP5 et j'obtiens toujours les mêmes erreurs! Des idées? Merci
En raison du grand intérêt que suscite cette question, j'ai décidé de la mettre à jour et de créer un petit script bash pour installer tout ce dont vous avez besoin pour travailler avec Laravel (celui-ci est associé au NGINX)
https://github.com/emilas44/laravel-5.4-on-Ubuntu/blob/master/script.sh
Vous pouvez simplement le copier et le modifier à votre guise ... vous avez peut-être déjà installé certains composants à l'intérieur du script. Si c'est le cas, vous pouvez supprimer librement les éléments inutiles.
Laravel 5.2 est en bas:
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
plus tard accessible via 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
et coller ceci à l'intérieur de ce document
#/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
ou utilisez cette commande
Sudo -- sh -c "echo '\n127.0.0.1 \twork.com'>> /etc/hosts"
J'ai créé un didacticiel sur youtube sur la façon de bien faire les choses .... Avec tout ce dont vous avez besoin pour travailler avec Laravel. Voici le lien: https://www.youtube.com/watch?v=A6TdaRIsG6g
Voici les étapes à suivre pour installer Laravel 5 sur Ubuntu Server 16.04 après une nouvelle mise à niveau
Tout d'abord, je devais supprimer complètement tout le code PHP. Ainsi, Mohammad Barhoush a déclaré:
Sudo apt-get -y purge php.*
Ensuite, j'ai réinstallé PHP avec:
Sudo apt install php libapache2-mod-php
Sudo apt install php-cli
Sudo apt install php-mysql
Après avoir réinstallé PHP ver.7.0, j'ai installé les paquetages connexes supplémentaires recommandés par Mohhammad:
Sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext php-Gd
Et activé les mods
Sudo phpenmod mcrypt
Sudo phpenmod mbstring
Et finalement, après tout, composer était toujours pénible, se plaignant de ne pas disposer de l'extension Zip pour un composer update
. J'ai donc installé ce qui suit:
Sudo apt-get install php7.0-Zip
Après cela, tout s'est bien passé, sans erreur!
Telles étaient les étapes nécessaires pour que laravel 5 fonctionne à partir de la version précédente LTS d'Ubuntu Server. J'espère que cela a aidé! Meilleures salutations :)
-Derick
J'avais mis à jour PHP 5.6.11 à 5.6.21.
Donc, dans mon cas, je devais courir:
Sudo apt-get install php5.6-mbstring
PS: Comment je suis passé de 5.6.11 à 5.6.21 comme suit:
Sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
Sudo apt-get update
Sudo apt-get install php5.6
Raison de la mise à niveau: zend_mm_heap est corromp pendant la mise à jour composer.
L'extension PHP mbstring réside maintenant dans un paquet séparé, vous devez donc procéder comme suit:
apt-get install php-mbstring
Là vous avez besoin de faire quelque chose manuellement dans le fichier de configuration .. J'ai découvert ceci article était vraiment utile. Tout d'abord, vous devez vérifier si la bibliothèque météo mbstring.dll est déjà installée dans le système à l'aide de la fonction 'phpinfo ()'. S'il est activé, au lieu de ne pas commenter 'extension = php_mbstring.dll', conservez-le simplement commenté dans le fichier de configuration php.ini ou, si ce n'est pas le cas, installez-le avec Sudo apt-get install php-mbstring php7.0-mbstring
Ensuite, configurez simplement ce qui suit.
; mbstring.language = All
;mbstring.internal_encoding = UTF-8
;mbstring.http_output = UTF-8
;mbstring.encoding_translation = On
;mbstring.func_overload = 0
C'est ça .. Je pense que vous connaissez le reste des choses comme installer laravel et tout ..
Merci à tous pour vos réponses .. Je suis enfin capable de résoudre ce problème en faisant:
Supprimer complètement php en premier:
Sudo apt-get -y purge php.*
Réinstallez php et ces packages associés importants:
Sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext
Activer les mods (Merci à la vidéo lewis4u):
Sudo phpenmod mcrypt
Sudo phpenmod mbstring
Donc, j'ai eu le même problème que le gars ci-dessus où je devais installer php-dom, alors j'ai essayé de lancer apt-get install php-dom
, mais le message est venu.
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.
Comme je suis un peu nouveau sur le terminal, j’ai trouvé cela un peu déroutant, mais je suis en cours d’exécution non-scrupuleuse 16.04 avec php7, j’ai donc lancé: apt-get install php7.0-xml
et cela a fonctionné pour moi ... espérons que cela aide quelqu'un!
la solution de oerdnj fonctionne. Après avoir installé mbstring
, vous devez l’activer dans php.ini
avant de lancer composer install
. Dans mon cas, laravel requiert ext-mbstring et ext-dom:apt-get install php-dom
Pour installer Laravel 5.4
sur Ubuntu 16.04
comme dans la documentation Laravel avec check:
php -v
, votre version php doit être PHP >= 5.6.4
php -m
pour OpenSSL PHP Extension
et PDO PHP Extension
.Terminal: Sudo apt install php-mbstring
et vérifiez à nouveau par php -m
pour Mbstring PHP Extension
et Tokenizer PHP Extension
.
Terminal: Sudo apt install php-xml
et vérifiez à nouveau par php -m
pour XML PHP Extension
Téléchargez Composer par ces 4 étapes dans le terminal:
php -r "copy (' https://getcomposer.org/installer ', 'composer-setup.php');"
php -r "if (hash_file ('SHA384', 'composer-setup.php') === ' php ');} echo PHP_EOL; "
php composer-setup.php
php -r "unlink ('composer-setup.php');"
Vérifiez composer dans le terminal: php composer.phar
Installez Laravel dans le terminal:
php composer.phar global require "laravel/installer"
La sortie du terminal indiquera votre répertoire actuel à /home/yourname/.config/composer
, accédez à votre répertoire actuel et appuyez sur ctrl+h
pour afficher le fichier caché.
Allez dans le dossier .config
puis dans le dossier composer
avec le contenu suivant: contenu du dossier composer
Créez Laravel project
dans /var/www/html
dans le terminal:
php composer.phar create-project --prefer-dist laravel/laravel /var/www/html/myLaravel
Ouvrez votre terminal myLaravel puis collez: php artisan serve
et copiez http://127.0.0.1:8000
dans votre navigateur.