我被迫安装 Ubuntu 才能安装https://github.com/znort987/blockparser
但是,make
我在运行时遇到了这个问题:
lnk -- parser
/usr/bin/ld: cannot find -lcrypto
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i686-linux-gnu/4.6/libstdc++.so when searching for -lstdc++
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i686-linux-gnu/4.6/libstdc++.a when
searching for -lstdc++
/usr/bin/ld: cannot find -lstdc++
collect2: ld returned 1 exit status
make: *** [parser] Error 1
我在互联网上搜索了一两圈,典型的建议是apt-get install libssl-dev
,但我已经这样做了:
Reading package lists... Done
Building dependency tree
Reading state information... Done
libssl-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
我正在运行 12.04.3(精确)。
当我尝试使用 g++ 编译它时,按照(例如)的建议https://stackoverflow.com/questions/5329638/usr-bin-ld-cannot-find我收到其他错误:
parser.cpp:2:18: fatal error: util.h: No such file or directory
(util.h
在文件夹中)
所以我希望 make 错误比编译错误更容易解决。
感谢你们迄今为止的帮助(昨晚遇到了 GRUB 加载程序问题;你们确实帮助了我),但我还需要更多帮助。我想我对 Ubuntu 还不熟悉。
答案1
/usr/bin/ld
由包提供binutils
因此安装后请尝试:
sudo apt-get install binutils libc6 libgcc1 libstdc++6 zlib1g gcc-4.6-base multiarch-support
答案2
对于 OP(user426364)来说,我取得了一些进展:
将 LIBS -lcrypto 更改为 -lcrypt (第 38 行)
sudo apt-get 安装 libssl-dev build-essential g++-4.4 libboost-all-dev libsparsehash-dev git-core perl
sudo apt-get 安装 libc6-dev-i386
sudo apt-get 安装 gcc-multilib
sudo apt-get 安装 libstdc++6-4.4-dev apt-get 安装 libstdc++6-4.6-dev
sudo apt-get 安装 binutils libc6 libgcc1 libstdc++6 zlib1g gcc-4.6-base 多架构支持
sudo apt-get install g++-multilib g++-4.4-multilib(互联网上其他地方提到了 4.2-multilib)
并一直到加密中未定义引用的问题(addrToHash160、compressPublicKey、decompressPublicKey、addrToHash160、hash160ToAddr、showFullAddr、rmd160、sha256)都出现了问题,导致很多关于未定义引用的错误消息。
答案3
blockparser.py 由python-markdown和python3-markdown所有当前支持的 Ubuntu 版本中的软件包。
可以安装:
sudo apt-get install python-markdown python-pygments python-markdown-doc python-utidyliby
答案4
在现代 Ubuntu 14.04 LTS 和 16.04 LTS 上,以下步骤允许编译和运行 blockparser:
sudo apt-get install git
git clone https://github.com/znort987/blockparser.git
cd blockparser
sudo apt-get install build-essential libsparsehash-dev libssl-dev libboost-dev
./make
./tst # to test it
./parser --help