1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/kl222-RabbitRemoteControl

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Linux.md 14 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 18:49 fda7c26

Компиляция для Linux

Автор: Kang Lin kl222@126.com
Переводчик: Allan Nordhøy epost@anotheragency.no

Окружение

Операционная система

  • Ubuntu

    ~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3 LTS Release: 22.04 Codename: jammy

  • Debian

    ~$ lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 12 (bookworm) Release: 12 Codename: bookworm

Qt Creator

Версия: v12.0.2
Рекомендуется использовать версию v5.0.2 или более позднюю.
Предыдущие версии не имеют поддержки CMake.

Инструменты

  • Установите пакет инструментов разработки

    ~$ sudo apt install build-essential

    Пакет инструментов разработки уже включает установку следующего:

    • Компилятор

      • GCC/g++

        ~$ sudo apt install g++ gcc

    • automake, autoconf, make, fakeroot

      ~$ sudo apt install automake autoconf make fakeroot

  • Git: https://www.git-scm.com

    ~$ sudo apt install git

  • CMake: https://cmake.org

    Версия: 3.27.0

    ~$ sudo apt install cmake

  • Пакетные инструменты: debhelper

    ~$ sudo apt install debhelper

  • Qt

    • Qt (официальный релиз): https://download.qt.io/official_releases/qt/

    • Qt5: текущая версия: 5.12.12

      • Системная сборка:

        ~$ sudo apt install qttools5-dev qttools5-dev-tools qtbase5-dev qtbase5-dev-tools qtmultimedia5-dev qtlocation5-dev libqt5svg5-dev libqtermwidget5-0-dev
    • Qt6: текущая версия: 6.4.2

      • Системная сборка:

        ~$ sudo apt install qt6-tools-dev qt6-tools-dev-tools qt6-base-dev qt6-base-dev-tools qt6-qpa-plugins libqt6svg6-dev qt6-l10n-tools qt6-translations-l10n qt6-scxml-dev qt6-multimedia-dev libqt6serialport6-dev qt6-webengine-dev qt6-webengine-dev-tools
  • [ДОПОЛНИТЕЛЬНО] IDE: Qt Creator. Рекомендуется использовать версию v5.0.2 или более позднюю. Предыдущие версии не имеют поддержки CMake.

    ~$ sudo apt install qtcreator

  • OpenGL: Требуется для запуска Qt.

    ~$ sudo apt install libglu1-mesa-dev

  • Doxygen: http://www.doxygen.nl/

    ~$ sudo apt install doxygen

Библиотечные зависимости

FreeRDP

  • Используйте системную библиотеку разработки

    ~$ sudo apt install freerdp2-dev
  • Используйте vcpkg

    • Расположение исходного кода: https://github.com/microsoft/vcpkg/

      ~$ git clone https://github.com/microsoft/vcpkg.git
      ~$ cd vcpkg
      ~/vcpkg$ ./bootstrap-vcpkg.sh
      ~/vcpkg$ ./vcpkg install freerdp
    • Укажите параметры CMake: -DCMAKE_TOOLCHAIN_FILE = путь установки vcpkg / scripts / buildsystems / vcpkg.cmake

    • С vcpk служба FreeRDP не является функцией по умолчанию, поэтому вам необходимо указать её вручную.

  • Соберите из исходного кода

    • Расположение исходного кода: https://github.com/FreeRDP/FreeRDP

    • Инструкции по сборке: https://github.com/FreeRDP/FreeRDP/wiki/Compilation

        ~$ git clone https://github.com/FreeRDP/FreeRDP.git
        ~$ cd FreeRDP
        ~/FreeRDP$ mkdir build
        ~/FreeRDP/build$ cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`pwd`/install -DWITH_SERVER=ON
        ~/FreeRDP/build$ cmake --build . --config Release --target install
    • Укажите параметры CMake:

      • -DBUILD_FREERDP=ON
      • -DFreeRDP-Client_DIR = путь установки freerdp / lib / cmake / FreeRDP-Client2
      • -DFreeRDP_DIR = путь установки freerdp / lib / cmake / FreeRDP2
      • -DWinPR_DIR = путь установки freerdp / lib / cmake / WinPR2

LibVNCServer

  • Используйте системную библиотеку разработки

    ~$ sudo apt install libvncserver-dev
  • Соберите из исходного кода

RabbitVNC

  • Соберите из исходного кода Расположение исходного кода: https://github.com/KangLin/RabbitVNC

    ~$ sudo apt install libpixman-1-dev
    ~$ git clone https://github.com/KangLin/RabbitVNC.git
    ~$ cd RabbitVNC
    ~/RabbitVNC$ mkdir build
    ~/RabbitVNC$ cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`pwd`/install
    ~/RabbitVNC$ cmake --build . --config Release --target install
  • Укажите параметры CMake: -DRabbitVNC_DIR = путь установки RabbitVNC / lib / cmake / tigervnc

TigerVNC

  • Соберите из исходного кода

Официальная программа не поддерживает библиотеки. См.: https://github.com/TigerVNC/tigervnc/issues/1123 Поддержка есть в форке KangLin. Расположение исходного кода: https://github.com/KangLin/tigervnc

~$ sudo apt install libpixman-1-dev
~$ git clone https://github.com/KangLin/tigervnc.git
~$ cd tigervnc
~/tigervnc$ mkdir build
~/tigervnc$ cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`pwd`/install
~/tigervnc$ cmake --build . --config Release --target install
  • Укажите параметры CMake: -Dtigervnc_DIR = путь установки TigerVNC / lib / cmake / tigervnc

libdatachannel

  • Используйте vcpkg

    • Расположение исходного кода: https://github.com/microsoft/vcpkg/

      ~$ git clone https://github.com/microsoft/vcpkg.git
      ~$ cd vcpkg
      ~/vcpkg$ ./vcpkg install libdatachannel
    • Укажите параметры CMake: -DCMAKE_TOOLCHAIN_FILE = путь установки vcpkg / scripts / buildsystems / vcpkg.cmake

  • Соберите из исходного кода

-DCMAKE_INSTALL_PREFIX=pwd/install ~/RabbitVNC/build$ cmake --build . --config Release --target install ~/RabbitVNC/build$ cd ~ # Compile TigerVNC ~$ git clone https://github.com/KangLin/tigervnc.git ~$ cd tigervnc ~$ mkdir build ~/tigervnc/build$ cmake .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=pwd/install ~/tigervnc/build$ cmake --build . --config Release --target install ~/tigervnc/build$ cd ~ ~$ sudo apt install libqxmpp-dev # Compile libdatachannel ~$ git clone https://github.com/paullouisageneau/libdatachannel.git ~$ cd libdatachannel ~/libdatachannel$ git submodule update --init --recursive ~/libdatachannel$ mkdir build ~/libdatachannel$ cd build ~/libdatachannel/build$ cmake .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=pwd/install ~/libdatachannel/build$ cmake --build . --config Release --target install ~/libdatachannel/build$ cd ~ # Compile QtService ~$ git clone https://github.com/KangLin/qt-solutions.git ~$ cd qt-solutions/qtservice ~/qt-solutions/qtservice$ mkdir build ~/qt-solutions/qtservice$ cd build ~/qt-services/qtservice/build$ cmake .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=pwd/install ~/qt-services/qtservice/build$ cmake --build . --config Release --target install ~/qt-services/qtservice/build$ cd ~ ~$ git clone https://github.com/KangLin/RabbitCommon.git ~$ git clone https://github.com/KangLin/RabbitRemoteControl.git $ cd RabbitRemoteControl /RabbitRemoteControl$ mkdir build /RabbitRemoteControl$ cd build /RabbitRemoteControl/build$ cmake .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=pwd/install
-DRabbitVNC_DIR=
/RabbitVNC/build/install/lib/cmake/RabbitVNC
-Dtigervnc_DIR=
/tigervnc/build/install/lib/cmake/tigervnc
-DBUILD_FREERDP=ON
-DLibDataChannel_DIR=
/libdatachannel/build/install/lib/cmake/LibDataChannel
-DQtService_DIR=
/qt-solutions/qtservice/build/lib/cmake/QtService ~/RabbitRemoteControl/build$ cmake --build . --config Release --target install

Перевод текста запроса на русский язык:

-DCMAKE_INSTALL_PREFIX=pwd/install ~/RabbitVNC/build$ cmake —build . —config Release —target install ~/RabbitVNC/build$ cd ~ # Компиляция TigerVNC ~$ git clone https://github.com/KangLin/tigervnc.git ~$ cd tigervnc ~$ mkdir build ~/tigervnc/build$ cmake .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=pwd/install ~/tigervnc/build$ cmake —build . —config Release —target install ~/tigervnc/build$ cd ~ ~$ sudo apt install libqxmpp-dev # Компиляция libdatachannel ~$ git clone https://github.com/paullouisageneau/libdatachannel.git ~$ cd libdatachannel ~/libdatachannel$ git submodule update —init —recursive ~/libdatachannel$ mkdir build ~/libdatachannel$ cd build ~/libdatachannel/build$ cmake .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=pwd/install ~/libdatachannel/build$ cmake —build . —config Release —target install ~/libdatachannel/build$ cd ~ # Компиляция QtService ~$ git clone https://github.com/KangLin/qt-solutions.git ~$ cd qt-solutions/qtservice ~/qt-solutions/qtservice$ mkdir build ~/qt-solutions/qtservice$ cd build ~/qt-solutions/qtservice/build$ cmake .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=pwd/install ~/qt-solutions/qtservice/build$ cmake —build . —config Release —target install ~/qt-solutions/qtservice/build$ cd ~ ~$ git clone https://github.com/KangLin/RabbitCommon.git ~$ git clone https://github.com/KangLin/RabbitRemoteControl.git $ cd RabbitRemoteControl /RabbitRemoteControl$ mkdir build /RabbitRemoteControl$ cd build /RabbitRemoteControl/build$ cmake .. -DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=pwd/install
-DRabbitVNC_DIR=
/RabbitVNC/build/install/lib/cmake/RabbitVNC
-Dtigervnc_DIR=
/tigervnc/build/install/lib/cmake/tigervnc
-DBUILD_FREERDP=ON
-DLibDataChannel_DIR=
/libdatachannel/build/install/lib/cmake/LibDataChannel
-DQtService_DIR=
/qt-solutions/qtservice/build/lib/cmake/QtService ~/RabbitRemoteControl/build$ cmake —build . —config Release —target install

1
https://api.gitlife.ru/oschina-mirror/kl222-RabbitRemoteControl.git
git@api.gitlife.ru:oschina-mirror/kl222-RabbitRemoteControl.git
oschina-mirror
kl222-RabbitRemoteControl
kl222-RabbitRemoteControl
master