LINUX.ORG.RU

История изменений

Исправление AndreyPr, (текущая версия) :

А что делать с picotool? Тут ошибка серьезнее

[andrey@fedora picotool]$ cmake ./
Using PICO_SDK_PATH from environment ('/home/andrey/pico/pico-sdk')
-- Configuring done
-- Generating done
-- Build files have been written to: /home/andrey/pico/picotool
[andrey@fedora picotool]$ make
[ 25%] Building CXX object CMakeFiles/picotool.dir/main.cpp.o
In file included from /home/andrey/pico/picotool/main.cpp:11:
/home/andrey/pico/picotool/cli.h: В функции-члене «D& cli::matchable_derived<T>::repeatable()»:
/home/andrey/pico/picotool/cli.h:257:25: ошибка: «numeric_limits» не является элементом «std»
  257 |             _max = std::numeric_limits<int>::max();
      |                         ^~~~~~~~~~~~~~
/home/andrey/pico/picotool/cli.h:257:40: ошибка: expected primary-expression before «int»
  257 |             _max = std::numeric_limits<int>::max();
      |                                        ^~~
/home/andrey/pico/picotool/cli.h: На глобальном уровне:
/home/andrey/pico/picotool/cli.h:444:31: ошибка: «numeric_limits» не является элементом «std»
  444 |         int _max_value = std::numeric_limits<int>::max();
      |                               ^~~~~~~~~~~~~~
/home/andrey/pico/picotool/cli.h:444:46: ошибка: expected primary-expression before «int»
  444 |         int _max_value = std::numeric_limits<int>::max();
      |                                              ^~~
/home/andrey/pico/picotool/cli.h: В lambda функции:
/home/andrey/pico/picotool/cli.h:408:36: ошибка: «numeric_limits» не является элементом «std»
  408 |                 long lvalue = std::numeric_limits<long>::max();
      |                                    ^~~~~~~~~~~~~~
/home/andrey/pico/picotool/cli.h:408:51: ошибка: expected primary-expression before «long»
  408 |                 long lvalue = std::numeric_limits<long>::max();
      |                                                   ^~~~
/home/andrey/pico/picotool/cli.h: На глобальном уровне:
/home/andrey/pico/picotool/cli.h:500:40: ошибка: «numeric_limits» не является элементом «std»
  500 |         unsigned int _max_value = std::numeric_limits<unsigned int>::max();
      |                                        ^~~~~~~~~~~~~~
/home/andrey/pico/picotool/cli.h:500:55: ошибка: expected primary-expression before «unsigned»
  500 |         unsigned int _max_value = std::numeric_limits<unsigned int>::max();
      |                                                       ^~~~~~~~
/home/andrey/pico/picotool/cli.h: В lambda функции:
/home/andrey/pico/picotool/cli.h:460:36: ошибка: «numeric_limits» не является элементом «std»
  460 |                 long lvalue = std::numeric_limits<long>::max();
      |                                    ^~~~~~~~~~~~~~
/home/andrey/pico/picotool/cli.h:460:51: ошибка: expected primary-expression before «long»
  460 |                 long lvalue = std::numeric_limits<long>::max();
      |                                                   ^~~~
make[2]: *** [CMakeFiles/picotool.dir/build.make:82: CMakeFiles/picotool.dir/main.cpp.o] Ошибка 1
make[1]: *** [CMakeFiles/Makefile2:199: CMakeFiles/picotool.dir/all] Ошибка 2
make: *** [Makefile:103: all] Ошибка 2

Возможно ли это исправить, не переписывая чужую программу?

Исходная версия AndreyPr, :

А что делать с picotool? Тут ошибка серьезнее ''' [andrey@fedora picotool]$ cmake ./ Using PICO_SDK_PATH from environment (‘/home/andrey/pico/pico-sdk’) – Configuring done – Generating done – Build files have been written to: /home/andrey/pico/picotool [andrey@fedora picotool]$ make [ 25%] Building CXX object CMakeFiles/picotool.dir/main.cpp.o In file included from /home/andrey/pico/picotool/main.cpp:11: /home/andrey/pico/picotool/cli.h: В функции-члене «D& cli::matchable_derived::repeatable()»: /home/andrey/pico/picotool/cli.h:257:25: ошибка: «numeric_limits» не является элементом «std» 257 | _max = std::numeric_limits::max(); | ^~~~~~~~~~~~~~ /home/andrey/pico/picotool/cli.h:257:40: ошибка: expected primary-expression before «int» 257 | _max = std::numeric_limits::max(); | ^~~ /home/andrey/pico/picotool/cli.h: На глобальном уровне: /home/andrey/pico/picotool/cli.h:444:31: ошибка: «numeric_limits» не является элементом «std» 444 | int _max_value = std::numeric_limits::max(); | ^~~~~~~~~~~~~~ /home/andrey/pico/picotool/cli.h:444:46: ошибка: expected primary-expression before «int» 444 | int _max_value = std::numeric_limits::max(); | ^~~ /home/andrey/pico/picotool/cli.h: В lambda функции: /home/andrey/pico/picotool/cli.h:408:36: ошибка: «numeric_limits» не является элементом «std» 408 | long lvalue = std::numeric_limits::max(); | ^~~~~~~~~~~~~~ /home/andrey/pico/picotool/cli.h:408:51: ошибка: expected primary-expression before «long» 408 | long lvalue = std::numeric_limits::max(); | ^~~~ /home/andrey/pico/picotool/cli.h: На глобальном уровне: /home/andrey/pico/picotool/cli.h:500:40: ошибка: «numeric_limits» не является элементом «std» 500 | unsigned int _max_value = std::numeric_limits::max(); | ^~~~~~~~~~~~~~ /home/andrey/pico/picotool/cli.h:500:55: ошибка: expected primary-expression before «unsigned» 500 | unsigned int _max_value = std::numeric_limits::max(); | ^~~~~~~~ /home/andrey/pico/picotool/cli.h: В lambda функции: /home/andrey/pico/picotool/cli.h:460:36: ошибка: «numeric_limits» не является элементом «std» 460 | long lvalue = std::numeric_limits::max(); | ^~~~~~~~~~~~~~ /home/andrey/pico/picotool/cli.h:460:51: ошибка: expected primary-expression before «long» 460 | long lvalue = std::numeric_limits::max(); | ^~~~ make[2]: *** [CMakeFiles/picotool.dir/build.make:82: CMakeFiles/picotool.dir/main.cpp.o] Ошибка 1 make[1]: *** [CMakeFiles/Makefile2:199: CMakeFiles/picotool.dir/all] Ошибка 2 make: *** [Makefile:103: all] Ошибка 2 ''' Возможно ли это исправить, не переписывая чужую программу?