How can I resolve "Your requirements could not be resolved to an installable set of packages" error?

LaravelLaravel 4Composer Php

Laravel Problem Overview


When I run composer update I receive some wired output.

enter image description here

Here is my composer.json look like.

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.", "keywords": ["framework", "laravel"],
    "license": "MIT",
    "repositories": [{
        "type": "vcs",
        "url": "https://github.com/Zizaco/ardent.git"
    }],
    "require-dev": {
        "phpunit/phpunit": "4.3.*"
    },
    "require": {
        "laravel/framework": "4.2.*", 
        "laravelbook/ardent": "dev-master as 2.4.0", 
        "zizaco/entrust": "dev-master", 
        "sebklaus/profiler": "dev-master", 
        "doctrine/dbal": "dev-master"
    },
    "autoload": {
        "classmap": [
            "app/commands",
            "app/controllers",
            "app/models",
            "app/database/migrations", "app/database/seeds", "app/tests",
            "app/libraries"
        ]
    },
    "scripts": {
        "post-install-cmd": [
            "php artisan clear-compiled", 
            "php artisan optimize"
        ],
        "post-update-cmd": [
            "php artisan clear-compiled", 
            "php artisan optimize"
        ],
        "post-create-project-cmd": [
            "php artisan key:generate"
        ]
    },
    "config": {
        "preferred-install": "dist"
    },
    "minimum-stability": "stable"
}

How do I fix that ?

Laravel Solutions


Solution 1 - Laravel

Run this command:

> composer install --ignore-platform-reqs

or

> composer update --ignore-platform-reqs

Solution 2 - Laravel

Your software dependencies have an incompatible version conflict.

At the same time you want to install any Laravel 4.2.x version, and "zizaco/entrust" from its master branch. And that master branch requires at least Laravel 5.0 (roughly speaking).

The problem comes from the dependency on branches. It's likely that the package zizaco/entrust once was using Laravel 4.2 in its master branch, and that you were able to install your dependencies at that day. But the very moment this branch gets updated with an incompatible version requirement, you will never ever be able to run composer update and get updated dependencies.

Always use tagged versions! Ideally you use a relaxed version requirement that allows for compatible updates. This should be expressed as a tilde-two-number version requirement: ~1.2 would install a version 1.2.0 and up (like 1.2.99 or 1.2.100), and also 1.3 and up. If you need a certain patch release: Caret-three-number version ^1.2.10 will install 1.2.10 or up, also 1.3 and up.

Using this version requirement instead of dev-master will allow you to use released versions instead of the unstable state in the master branch, and allows you to address the most recent version that still works with Laravel 4.2. I guess that would be zizaco/entrust version 1.3.0, but version 1.2 would also qualify. Go with "zizaco/entrust": "~1.2".

Solution 3 - Laravel

I am facing the same issue. I am using 'Lumen' microservice framework. I recently resolved the same issue by installing two packages:-

  1. sudo apt-get install php7.0-mbstring,
  2. sudo apt-get install php7.0-xml or sudo apt-get install php-xml

After installing this, you need to execute this command:- composer update

Hope, it will resolve the issue. I work on my system.

Solution 4 - Laravel

I use Windows 10 machine working with PHP 8 and Lavarel 8 and I got the same error, I used the following command :-

composer update --ignore-platform-reqs

to update all the packages regardless of the version conflicts.

Solution 5 - Laravel

The simplest solution is adding --ignore-platform-reqs flag.

> If you are running composer install or composer update use it with --ignore-platform-reqs flag

Example

composer install --ignore-platform-reqs

Or

composer update --ignore-platform-reqs

And this should do the trick!

Solution 6 - Laravel

Were those dev-masters added automatically? Avoid them as unnecessary version constraints, for 'any suitable version' use "*", or "@dev" if you don't mind dev packages. My guess is that Entrust is the potential troublemaker.

Also, "minimum-stability": "stable" imposes additional constraints, and

"minimum-stability": "dev",
"prefer-stable": true

is more conflict-free, consider it a rule of thumb.

Solution 7 - Laravel

I solved the same issue setting 'laravel/framework' dependency version from "^8.0" to "^7.0".

After that running composer update --ignore-platform-reqs simply worked

composer.json

Solution 8 - Laravel

I am facing the same issue in Laravel v8.49.0 (PHP v8.0.6). Using Composer through install packages
I recently resolved the same issue by installing two packages:- > composer create-project laravel/laravel myapp

your requirement could not be resolved

Composer Update

>composer update --ignore-platform-reqs

OR
> composer install --ignore-platform-reqs

Check Start Server
> php artisan serve

enter image description here

Solution 9 - Laravel

Add "barryvdh/laravel-cors": "^0.7.3" at the end of require array inside composer.json

Save composer.json and run composer update

You are done !

Solution 10 - Laravel

"config": {
  "platform": {
    "ext-pcntl": "7.2",
    "ext-posix": "7.2"
  }
}

Solution 11 - Laravel

I encountered this problem in Laravel 5.8, what I did was to do composer require for each library and all where installed correctly.

Like so:

instead of adding it to the composer.json file or specifying a version:

composer require msurguy/honeypot: dev-master

I instead did without specifying any version:

composer require msurguy/honeypot

I hope it helps, thanks

Solution 12 - Laravel

I solved the same error, by adding "zizaco/entrust": "*" instead of the "zizaco/entrust": "~1.2".

Solution 13 - Laravel

If you are using php ^8.0

open list of available php versions

   sudo update-alternatives --config php

switch to on of the older versions above PHP 7.2, select one of them then update composer

composer update

Solution 14 - Laravel

Install the following according to the PHP version installed on your system:

sudo apt-get install php8.0-curl php8.0-gd php8.0-xsl php8.0-dom

Finally try again to create the laravel project with composer

composer create-project laravel/laravel myProject

Solution 15 - Laravel

You must be in the correct directory so cd into it, then: composer update --ignore-platform-reqs if you have previous installed composer as Vivek M suggests. My problem was wrong directory. cd into: xampp/htdocs/laravelProjects/laravelP1

Solution 16 - Laravel

CAUSE:

The error is happening because your project folder is owned by the root user.

SOLUTION

Change ownership to the currently signed in user and not the root user. If you only have root as the sole user, create another user with root privileges.

$ sudo chown -R current_user /my/project/directory/

then

$ composer install

Solution 17 - Laravel

Just activate the curl in the php.ini file

;extension=php_curl.dll

to

extension=php_curl.dll

and then composer install

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questioncode-8View Question on Stackoverflow
Solution 1 - LaravelGufran HasanView Answer on Stackoverflow
Solution 2 - LaravelSvenView Answer on Stackoverflow
Solution 3 - LaravelAnkitView Answer on Stackoverflow
Solution 4 - Laravelwingman__7View Answer on Stackoverflow
Solution 5 - LaravelVivek MaruView Answer on Stackoverflow
Solution 6 - LaravelEstus FlaskView Answer on Stackoverflow
Solution 7 - LaravelnicolasDevDesView Answer on Stackoverflow
Solution 8 - LaravelSarthak RavalView Answer on Stackoverflow
Solution 9 - LaravelTahir YasinView Answer on Stackoverflow
Solution 10 - LaravelFull HelenoView Answer on Stackoverflow
Solution 11 - LaravelBlackPearlView Answer on Stackoverflow
Solution 12 - LaravelNadZView Answer on Stackoverflow
Solution 13 - LaravelHassan Elshazly EidaView Answer on Stackoverflow
Solution 14 - Laravelreza sabzi nejadView Answer on Stackoverflow
Solution 15 - LaravelRobert YeomansView Answer on Stackoverflow
Solution 16 - LaravelSimon NjengaView Answer on Stackoverflow
Solution 17 - LaravelGideaoView Answer on Stackoverflow