Сборка SvxLink на Orange Pi
1. Загрузка пакетов
sudo apt update
sudo apt install g++ cmake make libsigc++-2.0-dev libgsm1-dev libpopt-dev tcl8.5-dev libgcrypt20-dev libspeex-dev libasound2-dev libopus-dev librtlsdr-dev doxygen groff alsa-utils vorbis-tools curl libcurl4-openssl-dev git rtl-sdr libcurl4-openssl-dev
2. Создайте пользователя svxlink и добавьте его в группы.
sudo useradd -rG audio,plugdev,gpio svxlink
3. Загрузите программное обеспечение с Github и скомпилируйте.
git clone http://github.com/sm0svx/svxlink.git
mkdir svxlink/src/build
cd svxlink/src/build
cmake -DUSE_QT=OFF -DCMAKE_INSTALL_PREFIX=/usr -DSYSCONF_INSTALL_DIR=/etc -DLOCAL_STATE_DIR=/var -DWITH_SYSTEMD=ON ..
make -j4
make doc
sudo make install
sudo ldconfig
На шаге 3.iv вы можете столкнуться со следующей ошибкой:
— НЕ удалось найти CURL (отсутствует: CURL_INCLUDE_DIR CURL_LIBRARY).
Ошибка CMake в svxlink/svxlink/CMakeLists.txt:48 (сообщение) :
Не удалось найти библиотеку CURL и файлы разработки.
В этом случае установите libcurl4-openssl-dev:
sudo apt-get установить libcurl4-openssl-dev
Успешный CMAKE должен выглядеть так:
tom@yo3iti-p:~/svxlink-maint/src/build$ cmake -DCMAKE_INSTALL_PREFIX=/opt/rolink -DSYSCONF_INSTALL_DIR=/opt/rolink/conf -DLOCAL_STATE_DIR=/opt/rolink/var ..
— Чтение файла версий…
— Пользователь SvxLink = svxlink
— Группа SvxLink = svxlink
— Найден Qt5 версии 5.5.1.
— С Systemd = ВЫКЛ.
— Найден CURL: /usr/include.
— Найден Doxygen: /usr/bin/doxygen (найдена версия «1.8.11»)
— Найден gzip: /bin/gzip
— Найден грофф: /usr/bin/groff
— Версия пакета = 19.09
— Настройка завершена
— Генерация завершена
— Файлы сборки записаны в: /home/tom/svxlink-maint/src/build
Создание групп и добавление пользователей
Теперь пришло время создать группу. Давайте создадим группу редакций. Для этого вы должны ввести команду:
sudo groupadd svxlink
Теперь мы хотим добавить нашего нового пользователя Оливию в редакцию группы. Для этого мы воспользуемся командой usermod. Эта команда довольно проста в использовании.
sudo usermod -a -G svxlink svxlink
Опция -a сообщает usermod, что мы добавляем, а опция -G сообщает usermod, что мы добавляем к имени группы, которое следует за опцией.
Как узнать, какие пользователи уже являются членами группы? Вы можете сделать это по старинке, вот так:
grep svxlink /etc/group
Связывание библиотек для выборочной установки
https://blog.andrewbeacock.com/2007/10/how-to-add-shared-libraries-to-linuxs.html
Ubuntu
Создайте новый файл в /etc/ld.so.conf.d/ с именем .conf.
Отредактируйте файл и добавьте по строке для каждого каталога общих библиотек (файлы *.so). Это будет выглядеть примерно так:
/usr/lib/APPLICATION/lib.
Перезагрузите список общесистемных путей к библиотекам:
sudo ldconfig
Debian
Edit /etc/ ld.so.conf
Добавьте по строке для каждого каталога общих библиотек (файлы *.so) в конец файла. Это будет выглядеть примерно так:
/usr/X11R6/lib
/usr/lib/APPLICATION/lib.
Перезагрузите список общесистемных путей к библиотекам. :
ldconfig
Если вы запустите новое приложение, оно теперь должно работать нормально, без необходимости устанавливать какие-либо переменные среды LD_LIBRARY_PATH.
Если проблемы по-прежнему возникают, вы можете получить список библиотек, находящихся на системном пути, повторно запустив команду ldconfig в подробном режиме:
ldconfig -v
Добавить команду в PATH
Включить подсветку синтаксиса в nano
https://askubuntu.com/questions/90013/how-do-i-enable-syntax-highlighting-in-nano
Использование find в Linux
https://www.tecmint.com/35-practical-examples-of-linux-find-command/
Используйте systemd для запуска службы Linux при загрузке
https://www.linode.com/docs/quick-answers/linux/start-service-at-boot/
Использование WPA_Supplicant вместо NetworkManager
https://www.linuxbabe.com/command-line/ubuntu-server-16-04-wifi-wpa-supplicant
https://unix.stackexchange.com/questions/192671/what-is-a-hotplug-event-from-the-interface