Я пытаюсь установить OpenBTS-UMTS на Ubuntu 18.04. Я работал успешно
./autogen.sh
и
./configure
затем
make
сбои со следующей ошибкой
Makefile:501: recipe for target 'CLI.lo' failed
make[2]: *** [CLI.lo] Error 1
make[2]: Leaving directory '/home/foo/Downloads/OpenBTS-UMTS/CLI'
Makefile:550: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/foo/Downloads/OpenBTS-UMTS'
Makefile:481: recipe for target 'all' failed
make: *** [all] Error 2
Как решить? Благодаря тому, кто попытается помочь.
Та же версия OpenBTS-UMTS скомпилирована и установленная успешно на Ubuntu 16.04
Использование Ubuntu 18 g ++-7 по умолчанию, проблема связана со статическими элементами данных константы, может быть инициализирован в объявлении класса. Это - проблематичное объявление:
../UMTS/UMTSRadioModem.h:181:28: ошибка: ‘constexpr’, необходимые для инициализации в классе статического элемента данных ‘константа, пускают в ход UMTS:: RadioModem:: mRACHThreshold’ нецелочисленного типа [-fpermissive] статическая константа пускают в ход mRACHThreshold = 10.0; ^ ~~~~~~~~~~~~~
(больше информации здесь)
Для компиляции OpenBTS-UMTS в Ubuntu 18 установите g ++-5: apt-get install g++-5-multilib
и затем настройте g ++ версии с помощью альтернатив обновления (см. также это сообщение),