오늘 아침부터 이것 때문에 꼼짝 못했어요. 기본적으로 나는 cmake .. -DETHASHCUDA=ON -DETHASHCL=OFF
이것을 따르는 동안 이 명령에 문제가 발생했습니다.https://medium.com/coinmonks/eth-x-nvidia-x-ubuntu-1980393a36f8지도 시간.
내가 확실히 아는 것:
문제는 매개변수에 있지 않습니다. 매개변수 없이 시도했지만 동일한 오류가 발생합니다.
인터넷에 연결되어 있습니다.
내가 시도한 것:
부스트를 수동으로 다운로드하여 대상 폴더에 넣고 로컬 파일이 있는 경우 해당 파일을 가져오는 옵션을 활성화하는 솔루션이 있는 비슷한 문제를 발견했습니다. (그것이 무엇인지 잊어버렸고 지금은 해당 질문 스레드를 찾을 수 없습니다.) , 죄송합니다). 물론 이것은 나에게 효과가 없었습니다.
나는 또한 그들의 사이트에서 다운로드 URL이 변경된 것을 보았지만 그 정보로 무엇을 해야할지 모르겠습니다.
관련 메시지는 다음과 같습니다.
-- SHA1 hash of
/root/.hunter/_Base/Download/Boost/1.66.0/075d0b4/boost_1_66_0.7z
does not match expected value
expected: '075d0b43980614054b1f1bafd189f863bba6600e'
actual: 'da39a3ee5e6b4b0d3255bfef95601890afd80709'
-- File already exists but hash mismatch. Removing...
-- Downloading...
dst='/root/.hunter/_Base/Download/Boost/1.66.0/075d0b4/boost_1_66_0.7z'
timeout='none'
-- Using src='https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.7z'
-- Retrying...
-- Using src='https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.7z'
-- Retry after 5 seconds (attempt #2) ...
-- Using src='https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.7z'
-- Retry after 5 seconds (attempt #3) ...
-- Using src='https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.7z'
-- Retry after 15 seconds (attempt #4) ...
-- Using src='https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.7z'
-- Retry after 60 seconds (attempt #5) ...
-- Using src='https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.7z'
CMake Error at Build/Boost-prefix/src/Boost-stamp/download-Boost.cmake:159 (message):
Each download failed!
error: downloading 'https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.7z' failed
status_code: 22
status_string: "HTTP response code said error"
Hunter 없이 cmake를 실행하려고 하면 -DHUNTER_ENABLED=OFF
다음 오류 메시지가 나타납니다.
CMake Error at CMakeLists.txt:68 (find_package):
Could not find a package configuration file provided by "jsoncpp" with any
of the following names:
jsoncppConfig.cmake
jsoncpp-config.cmake
Add the installation prefix of "jsoncpp" to CMAKE_PREFIX_PATH or set
"jsoncpp_DIR" to a directory containing one of the above files. If
"jsoncpp" provides a separate development package or SDK, be sure it has
been installed.
업데이트:필요한 패키지를 수동으로 설치할 수 있었고 cmake ..
성공적으로 실행할 수 있었습니다.
그러나 실행할 때 또 다른 오류가 발생했습니다.cmake --build .
오류:
In file included from /home/luka/ethrepoclone/ethminer/libethash-cuda/CUDAMiner.cpp:18:
/home/luka/ethrepoclone/ethminer/libethash-cuda/../libethcore/Farm.h:30:10: fatal error: json/json.h: No such file or directory
30 | #include <json/json.h>
| ^~~~~~~~~~~~~
compilation terminated.
업데이트#2:위의 오류를 수정한 후 ln -s /usr/include/jsoncpp/json/ /usr/include/json
이제 일종의 FixHash.h 파일에서 다른(컴파일 시간에) 오류가 발생합니다.
[ 56%] Building CXX object libethcore/CMakeFiles/ethcore.dir/EthashAux.cpp.o
/home/luka/ethmining/ethminer/libethcore/EthashAux.cpp: In static member function ‘static dev::eth::Result dev::eth::EthashAux::eval(int, const h256&, uint64_t)’:
/home/luka/ethmining/ethminer/libethcore/EthashAux.cpp:28:29: error: ‘get_global_epoch_context’ is not a member of ‘ethash’
28 | auto& context = ethash::get_global_epoch_context(epoch);
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/EthashAux.cpp:30:88: error: no matching function for call to ‘dev::FixedHash<32>::FixedHash(<brace-enclosed initializer list>)’
30 | h256 mix{reinterpret_cast<byte*>(result.mix_hash.bytes), h256::ConstructFromPointer};
| ^
In file included from /home/luka/ethmining/ethminer/libethcore/../libdevcore/Exceptions.h:31,
from /home/luka/ethmining/ethminer/libethcore/EthashAux.h:21,
from /home/luka/ethmining/ethminer/libethcore/EthashAux.cpp:18:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:136:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(const string&) [with unsigned int N = 32; std::string = std::__cxx11::basic_string<char>]’
136 | explicit FixedHash(std::string const& _s)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:136:14: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:130:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(const byte*, dev::FixedHash<N>::ConstructFromPointerType) [with unsigned int N = 32; byte = unsigned char]’
130 | explicit FixedHash(byte const* _bs, ConstructFromPointerType /*unused*/)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:130:14: note: conversion of argument 1 would be ill-formed:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:112:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(dev::bytesConstRef, dev::FixedHash<N>::ConstructFromHashType) [with unsigned int N = 32; dev::bytesConstRef = dev::vector_ref<const unsigned char>]’
112 | explicit FixedHash(bytesConstRef _b, ConstructFromHashType _t = FailIfDifferent)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:112:14: note: conversion of argument 1 would be ill-formed:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:94:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(const bytes&, dev::FixedHash<N>::ConstructFromHashType) [with unsigned int N = 32; dev::bytes = std::vector<unsigned char>]’
94 | explicit FixedHash(bytes const& _b, ConstructFromHashType _t = FailIfDifferent)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:94:14: note: conversion of argument 1 would be ill-formed:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:91:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(unsigned int) [with unsigned int N = 32]’
91 | explicit FixedHash(unsigned _u) { toBigEndian(_u, m_data); }
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:91:14: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:88:5: note: candidate: ‘dev::FixedHash<N>::FixedHash(const Arith&) [with unsigned int N = 32; dev::FixedHash<N>::Arith = boost::multiprecision::number<boost::multiprecision::backends::cpp_int_backend<256, 256, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void> >]’
88 | FixedHash(Arith const& _arith) { toBigEndian(_arith, m_data); }
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:88:5: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:79:14: note: candidate: ‘template<unsigned int M> dev::FixedHash<N>::FixedHash(const dev::FixedHash<M>&, dev::FixedHash<N>::ConstructFromHashType)’
79 | explicit FixedHash(FixedHash<M> const& _h, ConstructFromHashType _t = AlignLeft)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:79:14: note: template argument deduction/substitution failed:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:75:5: note: candidate: ‘dev::FixedHash<N>::FixedHash() [with unsigned int N = 32]’
75 | FixedHash() { m_data.fill(0); }
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:75:5: note: candidate expects 0 arguments, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:41:7: note: candidate: ‘constexpr dev::FixedHash<32>::FixedHash(const dev::FixedHash<32>&)’
41 | class FixedHash
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:41:7: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:41:7: note: candidate: ‘constexpr dev::FixedHash<32>::FixedHash(dev::FixedHash<32>&&)’
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:41:7: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/EthashAux.cpp:31:92: error: no matching function for call to ‘dev::FixedHash<32>::FixedHash(<brace-enclosed initializer list>)’
31 | h256 final{reinterpret_cast<byte*>(result.final_hash.bytes), h256::ConstructFromPointer};
| ^
In file included from /home/luka/ethmining/ethminer/libethcore/../libdevcore/Exceptions.h:31,
from /home/luka/ethmining/ethminer/libethcore/EthashAux.h:21,
from /home/luka/ethmining/ethminer/libethcore/EthashAux.cpp:18:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:136:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(const string&) [with unsigned int N = 32; std::string = std::__cxx11::basic_string<char>]’
136 | explicit FixedHash(std::string const& _s)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:136:14: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:130:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(const byte*, dev::FixedHash<N>::ConstructFromPointerType) [with unsigned int N = 32; byte = unsigned char]’
130 | explicit FixedHash(byte const* _bs, ConstructFromPointerType /*unused*/)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:130:14: note: conversion of argument 1 would be ill-formed:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:112:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(dev::bytesConstRef, dev::FixedHash<N>::ConstructFromHashType) [with unsigned int N = 32; dev::bytesConstRef = dev::vector_ref<const unsigned char>]’
112 | explicit FixedHash(bytesConstRef _b, ConstructFromHashType _t = FailIfDifferent)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:112:14: note: conversion of argument 1 would be ill-formed:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:94:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(const bytes&, dev::FixedHash<N>::ConstructFromHashType) [with unsigned int N = 32; dev::bytes = std::vector<unsigned char>]’
94 | explicit FixedHash(bytes const& _b, ConstructFromHashType _t = FailIfDifferent)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:94:14: note: conversion of argument 1 would be ill-formed:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:91:14: note: candidate: ‘dev::FixedHash<N>::FixedHash(unsigned int) [with unsigned int N = 32]’
91 | explicit FixedHash(unsigned _u) { toBigEndian(_u, m_data); }
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:91:14: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:88:5: note: candidate: ‘dev::FixedHash<N>::FixedHash(const Arith&) [with unsigned int N = 32; dev::FixedHash<N>::Arith = boost::multiprecision::number<boost::multiprecision::backends::cpp_int_backend<256, 256, boost::multiprecision::unsigned_magnitude, boost::multiprecision::unchecked, void> >]’
88 | FixedHash(Arith const& _arith) { toBigEndian(_arith, m_data); }
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:88:5: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:79:14: note: candidate: ‘template<unsigned int M> dev::FixedHash<N>::FixedHash(const dev::FixedHash<M>&, dev::FixedHash<N>::ConstructFromHashType)’
79 | explicit FixedHash(FixedHash<M> const& _h, ConstructFromHashType _t = AlignLeft)
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:79:14: note: template argument deduction/substitution failed:
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:75:5: note: candidate: ‘dev::FixedHash<N>::FixedHash() [with unsigned int N = 32]’
75 | FixedHash() { m_data.fill(0); }
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:75:5: note: candidate expects 0 arguments, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:41:7: note: candidate: ‘constexpr dev::FixedHash<32>::FixedHash(const dev::FixedHash<32>&)’
41 | class FixedHash
| ^~~~~~~~~
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:41:7: note: candidate expects 1 argument, 2 provided
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:41:7: note: candidate: ‘constexpr dev::FixedHash<32>::FixedHash(dev::FixedHash<32>&&)’
/home/luka/ethmining/ethminer/libethcore/../libdevcore/FixedHash.h:41:7: note: candidate expects 1 argument, 2 provided
make[2]: *** [libethcore/CMakeFiles/ethcore.dir/build.make:63: libethcore/CMakeFiles/ethcore.dir/EthashAux.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:304: libethcore/CMakeFiles/ethcore.dir/all] Error 2
make: *** [Makefile:152: all] Error 2
답변1
Boost는 다운로드를 JFrog Artifactory로 옮겼습니다.
Boost 사용자의 경우 유일한 차이점은 릴리스 및 스냅샷을 다운로드할 수 있는 새로운 URL이 있다는 것입니다.
대신에:https://dl.bintray.com/boostorg/release/당신은 사용해야합니다https://boostorg.jfrog.io/artifactory/main/release/부스트 릴리스를 검색합니다.
아마도 - 이렇게 하면 문제가 해결될 것입니다:
https://github.com/ethereum-mining/ethminer/commit/47348022be371df97ed1d8535bcb3969a085f60a
cmake/Hunter/config.cmake
@@ -1,2 +1,7 @@
hunter_config(CURL VERSION ${HUNTER_CURL_VERSION} CMAKE_ARGS HTTP_ONLY=ON CMAKE_USE_OPENSSL=OFF CMAKE_USE_LIBSSH2=OFF CURL_CA_PATH=none)
- hunter_config(Boost VERSION 1.66.0)
+ hunter_config(
+ Boost
+ VERSION 1.66.0_new_url
+ SHA1 f0b20d2d9f64041e8e7450600de0267244649766
+ URL https://boostorg.jfrog.io/artifactory/main/release/1.66.0/source/boost_1_66_0.tar.gz
+ )
답변2
수정 사항은 최신 버전의 CMake와 함께 작동 중인 Hunter 버전을 사용하는 것입니다. 나는 이 솔루션에 대해 끌어오기 요청을 했습니다. 작동 중입니다.
여기에서 확인하세요: https://github.com/ethereum-mining/ethminer/pull/2413/files