LINUX.ORG.RU

make: *** [Makefile:146: all] Error 2

 , ,


0

1

Делал установку по инструкции https://github.com/ton-defi-org/ton-binaries#linux-ubuntu--debian , но вылезла ошибка

''' [ 38%] Linking CXX static library librocksdb.a [ 38%] Built target rocksdb make: *** [Makefile:146: all] Error 2 '''

Что делать? Спасибо.

Ответ на: комментарий от Danger271

Релевантная ошибка:

/home/kali/ton/third-party/abseil-cpp/absl/synchronization/internal/graphcycles.cc:451:26: error: ‘numeric_limits’ is not a member of ‘std’
  451 |   if (x->version == std::numeric_limits<uint32_t>::max()) {
      |                          ^~~~~~~~~~~~~~
/home/kali/ton/third-party/abseil-cpp/absl/synchronization/internal/graphcycles.cc:451:49: error: expected primary-expression before ‘>’ token
  451 |   if (x->version == std::numeric_limits<uint32_t>::max()) {
      |                                                 ^
/home/kali/ton/third-party/abseil-cpp/absl/synchronization/internal/graphcycles.cc:451:52: error: ‘::max’ has not been declared; did you mean ‘std::max’?
  451 |   if (x->version == std::numeric_limits<uint32_t>::max()) {
      |                                                    ^~~
      |                                                    std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /home/kali/ton/third-party/abseil-cpp/absl/synchronization/internal/graphcycles.cc:38:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
make[2]: *** [third-party/abseil-cpp/absl/synchronization/CMakeFiles/absl_graphcycles_internal.dir/build.make:76: third-party/abseil-cpp/absl/synchronization/CMakeFiles/absl_graphcycles_internal.dir/internal/graphcycles.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:5847: third-party/abseil-cpp/absl/synchronization/CMakeFiles/absl_graphcycles_internal.dir/all] Error 2

Дистрибутив Kali не предназначен для общего назначения, похоже там какая-то старая версия компилятора. Дабы в будущем не ковыряться с подобными ошибками, советую перейти на любой нормальный Linux-дистрибутив общего назначения, а не специализированный.

По поводу ошибки, попробуй забить костылём, добавив в начало файла ton/third-party/abseil-cpp/absl/synchronization/internal/graphcycles.cc строку:

#include <limits>

И затем пересобери проект.

EXL ★★★★★
()