-1

I'm using PHP 7. I want to install the components necessary to run the code here -- https://github.com/Bit-Wasp/stratum-php . I want to make client connections to a stratum pool. I'm not clear on what exact components I need to do that so I decided to install them all, but I'm getting some errors

localhost:stratum-php-master davea$ composer require bitwasp/bitcoin bitwasp/bitcoin-lib bitwasp/bitcoin-node bitwasp/bitcoin-p2p bitwasp/buffertools bitwasp/commonblockchain bitwasp/secp256k1-php bitwasp/stratum bitwasp/testing-php bitwasp/thread
Using version v0.0.34.2 for bitwasp/bitcoin
Using version ^1.2 for bitwasp/bitcoin-lib
Using version ^0.0.2 for bitwasp/bitcoin-node
Using version ^0.0.17 for bitwasp/bitcoin-p2p
Using version ^0.5.0 for bitwasp/buffertools
Using version ^1.0 for bitwasp/commonblockchain
Using version ^0.1.2 for bitwasp/secp256k1-php
Using version ^0.3.0 for bitwasp/stratum
Using version ^0.1.1 for bitwasp/testing-php
Using version ^0.0.1 for bitwasp/thread
./composer.json has been updated
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
    - The requested package bitwasp/stratum No version set (parsed as 1.0.0) is satisfiable by bitwasp/stratum[No version set (parsed as 1.0.0)] but these conflict with your requirements or minimum-stability.
  Problem 2
    - Installation request for bitwasp/bitcoin v0.0.34.2 -> satisfiable by bitwasp/bitcoin[v0.0.34.2].
    - bitwasp/bitcoin v0.0.34.2 requires bitwasp/buffertools ^0.4.0 -> satisfiable by bitwasp/buffertools[0.4.x-dev, v0.4.0, v0.4.1] but these conflict with your requirements or minimum-stability.
  Problem 3
    - Installation request for bitwasp/bitcoin-node ^0.0.2 -> satisfiable by bitwasp/bitcoin-node[v0.0.2].
    - bitwasp/bitcoin-node v0.0.2 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
  Problem 4
    - Installation request for bitwasp/bitcoin-p2p ^0.0.17 -> satisfiable by bitwasp/bitcoin-p2p[v0.0.17].
    - bitwasp/bitcoin-p2p v0.0.17 requires bitwasp/bitcoin ~0.0.33.1 -> satisfiable by bitwasp/bitcoin[0.0.33.x-dev, v0.0.33.1, v0.0.33.2, v0.0.33.3] but these conflict with your requirements or minimum-stability.
  Problem 5
    - bitwasp/bitcoin-lib v1.2.3 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - bitwasp/bitcoin-lib v1.2.2 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - bitwasp/bitcoin-lib v1.2.1 requires mdanter/ecc dev-master#89640a0873e212a723212e7f374f973b7d1fe6f6 -> satisfiable by mdanter/ecc[dev-master] but these conflict with your requirements or minimum-stability.
    - bitwasp/bitcoin-lib 1.2.0 requires mdanter/ecc dev-master#89640a0873e212a723212e7f374f973b7d1fe6f6 -> satisfiable by mdanter/ecc[dev-master] but these conflict with your requirements or minimum-stability.
    - Installation request for bitwasp/bitcoin-lib ^1.2 -> satisfiable by bitwasp/bitcoin-lib[1.2.0, v1.2.1, v1.2.2, v1.2.3].


Installation failed, reverting ./composer.json to its original content.

Looking at the first error,

The requested package bitwasp/stratum No version set (parsed as 1.0.0) is satisfiable by bitwasp/stratum[No version set (parsed as 1.0.0)] but these conflict with your requirements or minimum-stability.

How do I figure out / specify the version that the error is complaining about?


Edit When I specified the version recommended and re-ran the command I got these errors ...
localhost:stratum-php-master davea$ composer require bitwasp/bitcoin bitwasp/bitcoin-lib bitwasp/bitcoin-node bitwasp/bitcoin-p2p bitwasp/buffertools:0.4.0 bitwasp/commonblockchain bitwasp/secp256k1-php bitwasp/stratum bitwasp/testing-php bitwasp/thread
Using version v0.0.34.2 for bitwasp/bitcoin
Using version ^1.2 for bitwasp/bitcoin-lib
Using version ^0.0.2 for bitwasp/bitcoin-node
Using version ^0.0.17 for bitwasp/bitcoin-p2p
Using version ^1.0 for bitwasp/commonblockchain
Using version ^0.1.2 for bitwasp/secp256k1-php
Using version ^0.3.0 for bitwasp/stratum
Using version ^0.1.1 for bitwasp/testing-php
Using version ^0.0.1 for bitwasp/thread
./composer.json has been updated
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
    - The requested package bitwasp/stratum 1.0.0 is satisfiable by bitwasp/stratum[1.0.0] but these conflict with your requirements or minimum-stability.
  Problem 2
    - Installation request for bitwasp/bitcoin v0.0.34.2 -> satisfiable by bitwasp/bitcoin[v0.0.34.2].
    - bitwasp/bitcoin v0.0.34.2 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
  Problem 3
    - Installation request for bitwasp/bitcoin-node ^0.0.2 -> satisfiable by bitwasp/bitcoin-node[v0.0.2].
    - bitwasp/bitcoin-node v0.0.2 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
  Problem 4
    - Installation request for bitwasp/bitcoin-p2p ^0.0.17 -> satisfiable by bitwasp/bitcoin-p2p[v0.0.17].
    - bitwasp/bitcoin-p2p v0.0.17 requires bitwasp/bitcoin ~0.0.33.1 -> satisfiable by bitwasp/bitcoin[0.0.33.x-dev, v0.0.33.1, v0.0.33.2, v0.0.33.3] but these conflict with your requirements or minimum-stability.
  Problem 5
    - mdanter/ecc v0.5.0 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - mdanter/ecc v0.4.5 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - mdanter/ecc v0.4.4 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - mdanter/ecc v0.4.3 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - mdanter/ecc v0.4.2 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - mdanter/ecc v0.4.1 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - mdanter/ecc v0.4.0 requires ext-gmp * -> the requested PHP extension gmp is missing from your system.
    - bitwasp/buffertools v0.4.0 requires mdanter/ecc ~0.4 -> satisfiable by mdanter/ecc[v0.4.0, v0.4.1, v0.4.2, v0.4.3, v0.4.4, v0.4.5, v0.5.0].
    - Installation request for bitwasp/buffertools 0.4.0 -> satisfiable by bitwasp/buffertools[v0.4.0].


Installation failed, reverting ./composer.json to its original content.
Dave
  • 15,639
  • 133
  • 442
  • 830
  • 2
    This is the first problem you must address. `the requested PHP extension gmp is missing from your system.` – delboy1978uk Jan 30 '18 at 16:22
  • Why can't anything be easy! When I tried to enable GMP I got some errors. If you want some quick points, here it is -- https://stackoverflow.com/questions/48527757/how-do-i-enable-gmp-on-mac-os-x-php-7 . – Dave Jan 30 '18 at 18:01
  • K, I installed and enabled GMP but I still get errors when running the above, for instance, "The requested package bitwasp/stratum 1.0.0 is satisfiable by bitwasp/stratum[1.0.0] but these conflict with your requirements or minimum-stability." – Dave Jan 30 '18 at 20:17

1 Answers1

1

Even if I could not see the problem with bitwasp/stratum so far (where does v1.0.0 come from?), I found another hint: you require bitwasp/bitcoin in v0.0.34.2 which explicitly requires bitwasp/buffertools in v0.4.0, but this conflicts with v0.5.0 you've required.

So, you should change the command line to require v0.4.0 of bitwasp/buffertools by writing it as bitwasp/buffertools:0.4.0. If there is still an error, please post it.

After all, I have the feeling that these packages are not really well maintained...

Nico Haase
  • 11,420
  • 35
  • 43
  • 69
  • Upvote for "these packages are not well maintained." Anyway, I specified teh version you recommended and then got a spew of other errors (included as an edit to my question). Not sure if I need to go through and hard-code each version for each dependency that is being complained about. – Dave Jan 30 '18 at 20:50
  • At first, the error about GMP has not vanished yet, so you should check whether you need to enable the extension for the CLI version of PHP too. See `php -i | grep "Loaded Configuration File"` to find the proper ini – Nico Haase Jan 30 '18 at 21:39
  • 1
    I swear, I edited the file -- /usr/local/etc/php/7.0/php.ini, but when I run your command, it tells me nothing is loaded ("Loaded Configuration File => (none)"). Who knew this could be so complicated? If you have any ideas, I posed the question here -- https://stackoverflow.com/questions/48532574/how-do-i-get-mac-to-install-php-with-a-php-ini-file . – Dave Jan 31 '18 at 00:19