Web: Компиляция

Материал из HOMEd Wiki
Версия от 07:22, 17 ноября 2023; Voznemozhno (обсуждение | вклад) (Новая страница: «{{Build|Web|homed-web|homed-service-web}}»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
HOMEd > Web > Установка > Компиляция

Компиляторы

Данные компиляторы GCC предназначены для работы в среде Linux на процессорах с архитектурой amd64.

файл целевая платформа
gcc-aarch64-none-linux-gnu-10.2.0.tar.xz Linux (aarch64)
gcc-arm-linux-gnuebihf-9.4.0.tar.xz Linux (armhf)
gcc-aarch64_generic-openwrt-linux-8.4.0-musl.tar.xz OpenWRT (aarch64_generic)
gcc-arm_cortex-a7_neon-vfpv4-openwrt-linux-8.4.0-musl.tar.xz OpenWRT (arm_cortex-a7_neon-vfpv4)
gcc-arm_cortex-a9_neon-openwrt-linux-8.4.0-musl.tar.xz OpenWRT (arm_cortex-a9_neon)
gcc-mips_24kc-openwrt-linux-8.4.0-musl.tar.xz OpenWRT (mips_24kc)
gcc-mipsel_24kc-openwrt-linux-8.4.0-musl.tar.xz OpenWRT (mipsel_24kc)
gcc-aarch64-openwrt-linux-gnu-8.4.0.tar.xz Entware (aarch64)
gcc-mips-openwrt-linux-gnu-8.4.0.tar.xz Entware (mips)
gcc-mipsel-openwrt-linux-gnu-8.4.0.tar.xz Entware (mipsel)

Готовые сборки Qt 5

Сборки Qt 5 предназначены для работы в среде Linux на процессорах с архитектурой amd64.

файл целевая платформа
qt-amd64-linux-5.15.4-shared.tar.xz Linux (amd64)
qt-aarch64-linux-gnu-5.15.4-shared.tar.xz Linux (aarch64)
qt-arm-linux-gnueabihf-5.15.4-shared.tar.xz Linux (armhf)
qt-aarch64_generic-openwrt-linux-5.15.4-shared.tar.xz OpenWRT (aarch64_generic)
qt-arm_cortex-a7_neon-vfpv4-openwrt-linux-5.15.4-shared.tar.xz OpenWRT (arm_cortex-a7_neon-vfpv4)
qt-arm_cortex-a9_neon-openwrt-linux-5.15.4-shared.tar.xz OpenWRT (arm_cortex-a9_neon)
qt-mips_24kc-openwrt-linux-5.15.4-shared.tar.xz OpenWRT (mips_24kc)
qt-mipsel_24kc-openwrt-linux-5.15.4-shared.tar.xz OpenWRT (mipsel_24kc)
qt-aarch64-openwrt-linux-gnu-5.15.4-shared.tar.xz Entware (aarch64)
qt-mips-openwrt-linux-gnu-5.15.4-shared.tar.xz Entware (mips)
qt-mipsel-openwrt-linux-gnu-5.15.4-shared.tar.xz Entware (mipsel)

Компиляция Qt 5

Минимальный набор исходников Qt 5 для сборки приложений HOMEd, собранный из официального пакета qt-everywhere-opensource-src-5.15.4.tar.xz, включающий в себя модуль qtmqtt и несколько исправлений:


Подготовка к компиляции:

$ ./configure -v -opensource -confirm-license -release -static -optimize-size -prefix /my/qt/location -xplatform my-qt-target -c++std c++17 -no-gui -no-widgets -no-opengl -no-sql-sqlite2 -no-sql-psql -no-sql-mysql -no-sql-odbc -no-sql-oci -no-sql-ibase -no-sql-db2 -no-freetype -no-harfbuzz -no-libjpeg -no-libpng -no-zlib -nomake examples -nomake tests

-static - статическая линковка, для динамической линковки нужно заменить на -shared
-prefix - путь для установки после компиляции
-xplatform - целевая платформа

xplatform целевая платформа
linux-aarch64-gnu-g++ Linux (aarch64)
linux-arm-gnueabihf-g++ Linux (armhf)
openwrt-aarch64-linux-g++ OpenWRT (aarch64)
openwrt-arm-linux-g++ OpenWRT (arm)
openwrt-i486-linux-g++ OpenWRT (i486)
openwrt-mips-linux-g++ OpenWRT (mips)
openwrt-mipsel-linux-g++ OpenWRT (mipsel)
entware-aarch64-linux-g++ Entware NDMS (aarch64)
entware-mips-linux-g++ Entware NDMS (mips)
entware-mipsel-linux-g++ Entware NDMS (mipsel)
...

Сборка и установка:

$ make -j4
$ make install

Компиляция HOMEd Web

$ mkdir homed
$ git clone https://github.com/u236/homed-service-common.git homed/homed-common
$ git clone https://github.com/u236/homed-service-web.git homed/homed-web
$ cd homed/homed-web
$ /my/qt/location/bin/qmake homed-web.pro
$ make -j $(nproc)