【问题标题】:Cannot build bitcoin无法构建比特币
【发布时间】:2013-04-18 17:22:47
【问题描述】:

github 获取酱汁,阅读 doc/build-unix.txt 中的说明。但是make不能编译进去!

[urs1412@noname 比特币]$cd src

[urs1412@noname src]$make -f makefile.unix

g++ -c -O2 -pthread -Wall -Wextra -Wformat -Wformat-security \
-Wno-unused-parameter -g -DBOOST_SPIRIT_THREADSAFE \
-D_FILE_OFFSET_BITS=64 -I/home/urs1412/w/bitcoin/src \
-I/home/urs1412/w/bitcoin/src/obj -DUSE_UPNP=0 -DUSE_IPV6=1 \
-I/home/urs1412/w/bitcoin/src/leveldb/include \
-I/home/urs1412/w/bitcoin/src/leveldb/helpers \
-DHAVE_BUILD_INFO -fno-stack-protector \
-fstack-protector-all -Wstack-protector \
-D_FORTIFY_SOURCE=2  -MMD -MF obj/alert.d \
-o obj/alert.o alert.cpp \

alert.cpp:6:53: fatal error: boost/algorithm/string/classification.hpp: 
No such file or directory
compilation terminated.
make: *** [obj/alert.o] Error 1

td;dr 无法构建 ,正在转储系统信息

[urs1412@noname src]$ uname -r

3.6.10-4.fc18.x86_64

[urs1412@noname src]$ git log -n 1

提交 77a1e12eed5fc66dce16584696f54988a8c2bf4e 合并:fe15aa3 0565b71 作者:加文·安德森 日期:2013 年 4 月 24 日星期三 08:48:06 -0700

Merge pull request #2554 from fanquake/qt-pro-brew-patch

bitcoin-qt.pro Brew patch

【问题讨论】:

  • 顺便说一句,Fedora 18 现在安装了 boost 和 boost-devel。现在收到不同的错误消息。移除了 fedoras 默认的 openssl 包;接下来尝试从源构建 openssl
  • 取得了一些进展。简单的依赖:boost,boost-devel。困难模式:还需要一个带 EC 扩展的 openssl buid,由于版权问题,这在 fedora 中不可用。
  • cd bitcoin && make -f makefile.unix #after install openssl
  • 在来自 serialize.h:22:0、netbase.h:10、util.h:29、alert.h:13、alert.cpp:11 的文件中:跨度>
  • allocators.h:12:53:致命错误:openssl/crypto.h:没有这样的文件或目录

标签: bitcoin fedora bitcoin


【解决方案1】:

我终于能够在我的 CentOS VPS 上构建 bitcoin-1.8(不是 git 源,尽管我相信这些相同的步骤也适用)。

这是我必须安装的软件包。请注意,我必须构建其中的一些。

作为根:

yum install gcc-c++ make
install boost-devel 
yum install db4-devel
yum install openssl-devel  # but this didn't provide ec.h, hence the next steps
yum install rpm-build
rpm -U ~jcomeau/rpmbuild/RPMS/x86_64/openssl-devel-1.0.0e-1.x86_64.rpm 
yum install lynx  # for downloading some source packages
yum install python-devel  # for building miniupnpc
rpm -i ~jcomeau/rpmbuild/RPMS/x86_64/libminiupnpc9-1.8.20130503-0.1.x86_64.rpm 
rpm -i ~jcomeau/rpmbuild/RPMS/x86_64/libminiupnpc-devel-1.8.20130503-0.1.x86_64.rpm

然后作为用户,make BOOST_LIB_SUFFIX=-mt all test

如果您需要有关构建 openssl-devel(规范文件在源代码中并且主要是功能性)和 libminiupnpc-devel(我从 OpenSUSE 源 RPM 获得规范文件并对其进行修改)的说明,请告诉我。

我相信您的直接问题是您没有安装 openssl-devel。但是,如果您不执行我所做的某些步骤,那么之后您可能会遇到这些其他问题。

【讨论】:

    【解决方案2】:

    确保 gcc 的 boost 库工作正常。尝试一个带有 boost 的测试“hello world”程序。你可以在目录中找到它:BOOST_BUILD_PATH/example/hello 使用 BOOST_BUILD_PATH/bin/b2 工具集=gcc 编译 如果它不起作用,则说明没有正确安装 boost。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-16
      • 1970-01-01
      相关资源
      最近更新 更多