Closed xuhcc closed 5 years ago
EDIT (2018-07-19): libsecp256k1
has bee in Arch's community
repo since at least 2017-12-31; mentioned in a later comment.
Installing the secp256k1-git
package from AUR system-wide helped for me - it conveniently skips building/running tests.
The relevant pip
package - secp256k1
- then picks up on the fact that there's a system-wide binary object already available, and uses that.
This is perhaps sub-par as far as "cleanroom isolation" goes, but at least you can use Populus then.
This dependency should be going away entirely in the coming few weeks when the switch to eth-tester happens.
also fails on debian sid.
apt install libsecp256k1-dev solves the issue.
Following these steps may be help for your problem, it worked for me.
sudo apt-get install libssl-dev build-essential automake pkg-config libtool libffi-dev libgmp-dev libyaml-cpp-dev
git clone https://github.com/ethereum/pyethereum/
cd pyethereum
python setup.py install
I finally got this working after several days. I had the same error as @xuhcc ;
subprocess.CalledProcessError: Command '['/tmp/pip-install-tvd6uck6/secp256k1/libsecp256k1/autogen.sh']' returned non-zero exit status 127.
----------------------------------------
Failed building wheel for secp256k1
Running setup.py clean for secp256k1
Successfully built anyconfig
Failed to build secp256k1
Thanks to @ShivaGuntuku, I ran the following;
sudo apt-get install libssl-dev build-essential automake pkg-config libtool libffi-dev libgmp-dev libyaml-cpp-dev
And it installed :tada:
I am using requirements.txt as follows, thanks to @SmokinCaterpillar who I met at a conference!
anyconfig==0.9.4
argh==0.26.2
atomicwrites==1.1.5
attrdict==2.0.0
attrs==18.1.0
bitcoin==1.1.42
certifi==2018.4.16
cffi==1.11.5
chardet==3.0.4
click==6.7
contextlib2==0.5.5
Cython==0.28.3
cytoolz==0.9.0.1
eth-abi==0.5.0
eth-account==0.2.3
eth-hash==0.1.4
eth-keyfile==0.5.1
eth-keys==0.1.0b4
eth-rlp==0.1.2
eth-tester==0.1.0b11
eth-testrpc==1.3.5
eth-utils==0.7.1
ethereum==1.6.1
hexbytes==0.1.0
idna==2.7
json-rpc==1.11.0
jsonschema==2.6.0
lru-dict==1.1.6
mkl-fft==1.0.0
mkl-random==1.0.1
more-itertools==4.2.0
numpy==1.14.5
parsimonious==0.8.0
pathtools==0.1.2
pbkdf2==1.3
pluggy==0.6.0
populus==2.2.0
py==1.5.3
py-geth==2.0.1
py-solc==3.1.0
pycparser==2.18
pycryptodome==3.6.1
pyethash==0.1.27
pylru==1.1.0
pysha3==1.0.2
pytest==3.6.1
PyYAML==3.12
repoze.lru==0.7
requests==2.19.1
rlp==0.6.0
scrypt==0.8.6
secp256k1==0.13.2
semantic-version==2.6.0
six==1.11.0
toolz==0.9.0
toposort==1.5
urllib3==1.23
watchdog==0.8.3
web3==3.16.5
websockets==4.0.1
Werkzeug==0.14.1
Python 3.6.5
I'm on Arch and solved this by installing community/libsecp256k1
. I naturally prefer this to secp256k1-git
because it comes from the community repo instead of the AUR. Install it with this:
$ pacman -S libsecp256k1
Thanks @introom @paulhauner for saving the day.
What was wrong?
Populus depends on secp256k1 package, which throws an error during installation:
Cute Animal Picture