Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ethereum Dependency Failure - Coincurve #112

Closed
ghost opened this issue Oct 16, 2018 · 1 comment
Closed

Ethereum Dependency Failure - Coincurve #112

ghost opened this issue Oct 16, 2018 · 1 comment

Comments

@ghost
Copy link

ghost commented Oct 16, 2018

Building out the docker image and running python3 setup.py experimental --blockchain=ethereum to have it build out / install the ethereum setup, I'm running into an issue installing the pyethereum dependency, Coincurve.

More than likely more ethereum dependency hell. Probably need to update rlp & pyethereum versioning to fix this. We first locked down RLP due to a bug, then had to lock down pyethereum. I believe RLP is good now so we should update these dependencies.

Running setup.py install for scrypt ... done
  Running setup.py install for pbkdf2 ... done
  Running setup.py install for py-ecc ... done
  Running setup.py install for toolz ... done
  Running setup.py install for cytoolz ... done
  Running setup.py install for pyethash ... done
  Running setup.py install for pycryptodome ... done
  Running setup.py install for coincurve ... error
....
....
configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating libsecp256k1.pc
    config.status: creating src/libsecp256k1-config.h
    config.status: executing depfiles commands
    config.status: executing libtool commands
    gcc -I/tmp/pip-install-j07ii9gs/coincurve/libsecp256k1 -g -O2 -Wall -Wextra -Wno-unused-function -c /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/gen_context.c -o gen_context.o
    gcc gen_context.o -o gen_context
    ./gen_context
      CC       src/libsecp256k1_la-secp256k1.lo
      CCLD     libsecp256k1.la
    /usr/bin/ar: `u' modifier ignored since `D' is the default (see `U')
      CC       src/tests-tests.o
    /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/tests.c: In function 'test_ecdsa_der_parse':
    /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/tests.c:4267:9: warning: implicit declaration of function 'ECDSA_SIG_get0' [-Wimplicit-function-declaration]
             ECDSA_SIG_get0(sig_openssl, &r, &s);
             ^~~~~~~~~~~~~~
    /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/tests.c:4267:9: warning: nested extern declaration of 'ECDSA_SIG_get0' [-Wnested-externs]
    In file included from /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/secp256k1.c:15:0,
                     from /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/tests.c:17:
    /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/ecmult_const_impl.h: In function 'secp256k1_wnaf_const.constprop':
    /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/ecmult_const_impl.h:113:20: warning: 'u' may be used uninitialized in this function [-Wmaybe-uninitialized]
         wnaf[word] = u * global_sign;
                      ~~^~~~~~~~~~~~~
      CCLD     tests
    src/tests-tests.o: In function `test_ecdsa_der_parse':
    /tmp/pip-install-j07ii9gs/coincurve/libsecp256k1/src/tests.c:4267: undefined reference to `ECDSA_SIG_get0'
    collect2: error: ld returned 1 exit status
    make: *** [Makefile:982: tests] Error 1
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-j07ii9gs/coincurve/setup.py", line 311, in <module>
        **setup_kwargs
      File "/usr/lib/python3.6/site-packages/setuptools/__init__.py", line 140, in setup
        return distutils.core.setup(**attrs)
      File "/usr/lib/python3.6/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/usr/lib/python3.6/site-packages/setuptools/command/install.py", line 61, in run
        return orig.install.run(self)
      File "/usr/lib/python3.6/distutils/command/install.py", line 545, in run
        self.run_command('build')
      File "/usr/lib/python3.6/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/usr/lib/python3.6/distutils/command/build.py", line 135, in run
        self.run_command(cmd_name)
      File "/usr/lib/python3.6/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/tmp/pip-install-j07ii9gs/coincurve/setup.py", line 197, in run
        subprocess.check_call([MAKE], cwd=build_temp)
      File "/usr/lib/python3.6/subprocess.py", line 291, in check_call
        raise CalledProcessError(retcode, cmd)
    subprocess.CalledProcessError: Command '['make']' returned non-zero exit status 2.
    
    ----------------------------------------
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-j07ii9gs/coincurve/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-_mer3aa6/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-j07ii9gs/coincurve/
Traceback (most recent call last):
  File "setup.py", line 70, in <module>
    packages=find_packages()
  File "/usr/lib/python3.6/site-packages/setuptools/__init__.py", line 140, in setup
    return distutils.core.setup(**attrs)
  File "/usr/lib/python3.6/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "setup.py", line 44, in run
    install(reqs)
  File "setup.py", line 48, in install
    subprocess.check_call([sys.executable, '-m', 'pip', 'install', package])
  File "/usr/lib/python3.6/subprocess.py", line 291, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'pip', 'install', 'ethereum==2.3.1\n']' returned non-zero exit status 1.
@ghost
Copy link
Author

ghost commented Oct 17, 2018

Setting Coincurve to 7.1.0 (down from 9.0.0 - I've looked and not too big of changes: https://github.com/ofek/coincurve#history) seems to work. I've created a PR for it and made an issue on Coincurve to hopefully get more insight into this issue.

ofek/coincurve#28

fuerve added a commit that referenced this issue Oct 17, 2018
#112 - Specifying Coincurve version to fix ethereum installation error
@ghost ghost closed this as completed Oct 25, 2018
fuerve pushed a commit to fuerve/cert-issuer that referenced this issue Jun 17, 2020
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

0 participants