namshi / jose 5.0.2需要lib-openssl

时间:2016-10-19 18:31:28

标签: php macos laravel xampp jwt

我正在尝试作曲家更新,但它说:

composer update
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
    - tymon/jwt-auth 0.5.1 requires namshi/jose 2.2.* -> satisfiable by namshi/jose[2.2.0, 2.2.1, 2.2.2].
    - tymon/jwt-auth 0.5.2 requires namshi/jose 2.2.* -> satisfiable by namshi/jose[2.2.0, 2.2.1, 2.2.2].
    - tymon/jwt-auth 0.5.3 requires namshi/jose 2.2.* -> satisfiable by namshi/jose[2.2.0, 2.2.1, 2.2.2].
    - tymon/jwt-auth 0.5.0 requires namshi/jose 2.0.* -> satisfiable by namshi/jose[2.0.0, 2.0.1, 2.0.2, 2.0.3].
    - tymon/jwt-auth 0.5.9 requires namshi/jose 5.0.* -> satisfiable by namshi/jose[5.0.2, 5.0.0, 5.0.1].
    - tymon/jwt-auth 0.5.4 requires namshi/jose 5.0.* -> satisfiable by namshi/jose[5.0.2, 5.0.0, 5.0.1].
    - tymon/jwt-auth 0.5.5 requires namshi/jose 5.0.* -> satisfiable by namshi/jose[5.0.2, 5.0.0, 5.0.1].
    - tymon/jwt-auth 0.5.6 requires namshi/jose 5.0.* -> satisfiable by namshi/jose[5.0.2, 5.0.0, 5.0.1].
    - tymon/jwt-auth 0.5.7 requires namshi/jose 5.0.* -> satisfiable by namshi/jose[5.0.2, 5.0.0, 5.0.1].
    - tymon/jwt-auth 0.5.8 requires namshi/jose 5.0.* -> satisfiable by namshi/jose[5.0.2, 5.0.0, 5.0.1].
    - tymon/jwt-auth 0.5.9 requires namshi/jose 5.0.* -> satisfiable by namshi/jose[5.0.2, 5.0.0, 5.0.1].
    - namshi/jose 2.2.2 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 2.2.1 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 2.2.0 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 2.0.3 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 2.0.2 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 2.0.1 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 2.0.0 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 5.0.2 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 5.0.1 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 5.0.0 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - namshi/jose 5.0.2 requires lib-openssl * -> the requested linked library openssl has the wrong version installed or is missing from your system, make sure to have the extension providing it.
    - Installation request for tymon/jwt-auth 0.5.* -> satisfiable by tymon/jwt-auth[0.5.0, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5, 0.5.6, 0.5.7, 0.5.8, 0.5.9].

我试图通过互联网进行搜索,但仍然无法修复,我正在使用运行macOS Sierra的XAMPP,我也已经尝试过了:

php -i | grep "SSL Version"
SSL Version => SecureTransport
rm /usr/local/bin/openssl
sudo ln -s /usr/local/Cellar/openssl/1.0.2j/bin/openssl /usr/local/bin/openssl
sudo chown root:wheel /usr/local

但它仍然

php -i | grep "SSL Version"
SSL Version => SecureTransport

我尝试的其他选择:

brew link openssl --force Warning: Refusing to link: openssl Linking keg-only openssl means you may end up linking against the insecure, deprecated system OpenSSL while using the headers from Homebrew's openssl. Instead, pass the full include/library paths to your compiler e.g.: -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib

我检查了我的OpenSSL版本:

openssl OpenSSL> version OpenSSL 1.0.2j 26 Sep 2016

并尝试了这个:

    ls -lash /usr/local/bin/openssl 8 lrwxr-xr-x 1 root admin 44B Oct 20 01:18 /usr/local/bin/openssl -> /usr/local/Cellar/openssl/1.0.2j/bin/openssl and ls -lash /usr/local/Cellar/openssl/1.0.2j/bin/openssl 1064 -r-xr-xr-x 1 aryo admin 528K Oct 19 17:38 /usr/local/Cellar/openssl/1.0.2j/bin/openssl
ln -s /usr/local/Cellar/openssl/1.0.2j/bin/openssl /usr/local/bin/openssl ln: /usr/local/bin/openssl: File exists

2 个答案:

答案 0 :(得分:0)

这是macOS Sierra的一个问题。完全相同的事情发生在我身上。我升级到Sierra,然后我的整个开发环境都出现了类似的错误。我不得不降级到El Capitan。

答案 1 :(得分:0)

问题是MacOS Sierra使用的是#34; Native OpenSSL"作曲家未正确检测到的实现。您可以通过执行以下命令行来验证它:

php -i | grep OpenSSL

如果您看到LibreSSL,请尝试使用Homebrew重新编译OpenSSL:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew tap homebrew/dupes
brew tap homebrew/versions
brew tap homebrew/php
brew install curl --with-libssh2 --with-openssl

现在您的OpenSSL实现应该是OpenSSLnamshi/jose的安装应该可以正常工作。您可以看到有关此主题的讨论on my Jose project