anaconda安装gmpy2和bit


在Anaconda下执行

下载Anaconda3-2021.05-Windows-x86_64.exe并执行即可。

设置国内源:

    编辑${USER.HOME}/.condarc文件

channels:

  - conda-forge

  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/



github: https://github.com/iceland2k14/bsgs.git

执行:python create_bPfile_mcpu.py mybpfile.bin 4,报错信息如下:

Traceback (most recent call last):

  File "create_bPfile_mcpu.py", line 11, in <module>

    import gmp_ec as ec

  File "D:\Anaconda3\bsgs\gmp_ec.py", line 7, in <module>

    import gmpy2

ModuleNotFoundError: No module named 'gmpy2'

需要安装gmpy2:

1)、以管理员权限运行anaconda prompt

2)、  conda install gmpy2

更正:在Anaconda Navigator里点击"CMD.exe Prompt",执行:conda install gmpy2,即可安装gmpy2。


执行命令:

python bsgs_hybrid_dll_gmp.py -pfile only_pk.txt -b mybpfile.bin -bl mybloom.bin -keyspace 0x10000000000000000:0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140 -rand 

又报错了

Traceback (most recent call last):

  File "bsgs_hybrid_dll_gmp.py", line 12, in <module>

    import bit

ModuleNotFoundError: No module named 'bit'


如何安装bit:

先在本地其他python版本(我的是python3.6)中使用pip安装bit,找到bit的安装位置:

Requirement already satisfied: bit in d:\python36\lib\site-packages (0.7.2)

Requirement already satisfied: requests in d:\python36\lib\site-packages (from bit) (2.25.1)

Requirement already satisfied: coincurve>=4.3.0 in d:\python36\lib\site-packages (from bit) (15.0.0)


Requirement already satisfied: asn1crypto in d:\python36\lib\site-packages (from coincurve>=4.3.0->b

it) (0.24.0)

Requirement already satisfied: cffi>=1.3.0 in d:\python36\lib\site-packages (from coincurve>=4.3.0->

bit) (1.12.0)

Requirement already satisfied: pycparser in d:\python36\lib\site-packages (from cffi>=1.3.0->coincur

ve>=4.3.0->bit) (2.19)

Requirement already satisfied: chardet<5,>=3.0.2 in d:\python36\lib\site-packages (from requests->bi

t) (3.0.4)

Requirement already satisfied: idna<3,>=2.5 in d:\python36\lib\site-packages (from requests->bit) (2

.8)

Requirement already satisfied: certifi>=2017.4.17 in d:\python36\lib\site-packages (from requests->b

it) (2020.11.8)

Requirement already satisfied: urllib3<1.27,>=1.21.1 in d:\python36\lib\site-packages (from requests

->bit) (1.25.3)

可以看到大概位置是在d:\python36\lib\site-packages下,然后去查找bit文件夹,

把bit和bit-0.7.2.dist-info两个文件夹复制到D:\Anaconda3\Lib文件夹下,

然后继续执行python bsgs_hybrid_dll_gmp.py -pfile only_pk.txt -b mybpfile.bin -bl mybloom.bin -keyspace 0x10000000000000000:0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140 -rand 


发现仍然报错:

Traceback (most recent call last):

  File "bsgs_hybrid_dll_gmp.py", line 12, in <module>

    import bit

  File "D:\Anaconda3\lib\bit\__init__.py", line 1, in <module>

    from bit.format import verify_sig

  File "D:\Anaconda3\lib\bit\format.py", line 1, in <module>

    from coincurve import verify_signature as _vs

ModuleNotFoundError: No module named 'coincurve'


看起来仍然缺少coincure包,那就继续将d:\python36\lib\site-packages文件夹下的coincurve文件夹复制到D:\Anaconda3\Lib下,

然后重试。

终于成功了!

这似乎又提供了一种安装三方包的方法。