Bitcoind

CentOS 6.6 上的比特幣編譯錯誤:“SIZE_MAX”未在此範圍內聲明

  • July 28, 2015

我正在嘗試按照本指南在 CentOS 6.6 上執行 bitcoind 實例(來自 git 儲存庫的分支 0.9),但是在建構 LevelDB 時出現此錯誤:

Building LevelDB ...
make[3]: Entering directory `/home/bitcoind/bitcoind/downloads/bitcoin/src/leveldb'
g++ -I. -I./include -fno-builtin-memcmp -pthread -DOS_LINUX -DLEVELDB_PLATFORM_POSIX -g -O2 -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter  -Wstack-protector -fstack-protector-all -fPIE -fvisibility=hidden -I/home/bitcoind/bitcoind/deps/include -DBOOST_SPIRIT_THREADSAFE -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS  -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -c helpers/memenv/memenv.cc -o helpers/memenv/memenv.o
helpers/memenv/memenv.cc: In member function ‘leveldb::Status leveldb::<unnamed>::FileState::Read(uint64_t, size_t, leveldb::Slice*, char*) const’:
helpers/memenv/memenv.cc:65: error: ‘SIZE_MAX’ was not declared in this scope
make[3]: *** [helpers/memenv/memenv.o] Error 1
make[3]: Leaving directory `/home/bitcoind/bitcoind/downloads/bitcoin/src/leveldb'
make[2]: *** [leveldb/libmemenv.a] Error 2
make[2]: Leaving directory `/home/bitcoind/bitcoind/downloads/bitcoin/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/bitcoind/bitcoind/downloads/bitcoin/src'
make: *** [all-recursive] Error 1

gcc 版本:gcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC)

這是編譯輸出結束的一個pastebin 。

有人對如何解決它有一些想法嗎?

所以我發現這個執行緒給了我如何解決這個問題的線索,基本上在第 5 行插入以下內容,src/leveldb/helpers/memenv/memenv.h它編譯得很好:

#ifndef __STDC_LIMIT_MACROS
#define __STDC_LIMIT_MACROS
#endif

引用自:https://bitcoin.stackexchange.com/questions/38837