简体   繁体   中英

Can't install Laravel via Composer

I have a problem Composer and Laravel. I found a lot of similar topic but it doesn't work. So when I try install Laravel it will show me: Installing laravel/laravel (v5.5.22)

  • Installing laravel/laravel (v5.5.22): Loading from cache Created project in sadsa

    @php -r "file_exists('.env') || copy('.env.example', '.env');" 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

    • phpunit/phpunit 6.5.5 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.5.4 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.5.3 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.5.2 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.5.1 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.5.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.4.4 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.4.3 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.4.2 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.4.1 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.4.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.3.1 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.3.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.2.4 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.2.3 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.2.2 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.2.1 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.2.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.1.4 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.1.3 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.1.2 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.1.1 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.1.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.9 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.8 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.7 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.6 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.5 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.4 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.3 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.2 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.13 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.12 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.11 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.10 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.1 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • phpunit/phpunit 6.0.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    • Installation request for phpunit/phpunit ~6.0 -> satisfiable by phpunit/phpunit[6.0.0, 6.0.1, 6.0.10, 6.0.11, 6.0.12, 6.0.13, 6.0.2, 6.0.3, 6.0.4, 6.0.5, 6.0.6, 6.0.7, 6.0.8, 6.0.9, 6.1.0, 6.1.1, 6.1.2, 6.1.3, 6.1.4, 6.2.0, 6.2.1, 6.2.2, 6.2.3, 6.2.4, 6.3.0, 6.3.1, 6.4.0, 6.4.1, 6.4.2, 6.4.3, 6.4.4, 6.5.0, 6.5.1, 6.5.2, 6.5.3, 6.5.4, 6.5.5].

    To enable extensions, verify that they are enabled in your .ini files:

    • /etc/php/7.0/cli/php.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-mbstring.ini
    • /etc/php/7.0/cli/conf.d/20-mcrypt.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
    • /etc/php/7.0/cli/conf.d/20-xdebug.ini
    • /etc/php/7.0/cli/conf.d/20-zip.ini You can also run php --ini inside terminal to see which files are used by PHP in CLI mode.

When I try install it globally, I have this but I can't use Laravel new something command:

Changed current directory to /home/michal/.composer Using version ^1.5 for laravel/installer ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Nothing to install or update Generating autoload files How I said I found a lot of topic but nothing works like install mbstring and so on.

Looks to me it is mainly focus at message requires ext-dom . Possible work around i can suggest is to install following packages:

  • php-xml

  • php-common

Or you can try with specific php version as follow:

  • php7.0-xml

  • php7.0-common

for php 7.0

 sudo apt-get install php7.0-xml

I am using Ubuntu 17.10 and PHP 7.1 is running well using

sudo apt-get install php7.1-xml

If you are using another version of PHP, for example: 7.0 can change it to

sudo apt-get install php7.0-xml

Don't forget to alwasy restart web server, for example in Ubuntu you can type in terminal:

sudo service apache2 reload

After that you can try run composer again. Hope this helps.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM