ਜਾਣ-ਪਛਾਣ
ਇੱਕ ਪਿਛਲੇ ਬਲੌਗਪੋਸਟ ਵਿੱਚ 'ਤੇ ਰਸਬੇਰੀ ਪਾਈ ਓਐਸ Raspberry Pi OS ਇੰਸਟਾਲ ਕਰੋ ਰਸਬੇਰੀ ਕੰਪਿ computerਟਰ ਮੋਡੀਊਲ4'ਤੇ ਮੈਂ ਰਸਬੇਰੀ ਕੰਪਿ computerਟਰ ਮੋਡੀਊਲ 'ਤੇ ਰਸਬੇਰੀ ਪਾਈ ਓਐਸ ਦੀ ਸਥਾਪਨਾ ਅਤੇ ਉਬੁੰਟੂ 20 'ਤੇ QtCreator ਲਈ ਕਰਾਸ ਕੰਪਾਈਲੇਸ਼ਨ ਸਥਾਪਤ ਕਰਨ ਬਾਰੇ ਲਿਖਿਆ.
ਇਹ ਬਲਾੱਗਪੋਸਟ - ਇਸ ਸਮੇਂ - Qt, RaspiOS Trixie ਅਤੇ Ubuntu 24.04 LTSਦੇ ਨਵੇਂ ਸੰਸਕਰਣ 6.10 ਦਾ ਅਪਡੇਟ ਹੈ.
ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਮੈਂ ਇੱਕ ਵਰਚੁਅਲ ਮਸ਼ੀਨ ਦੀ ਵਰਤੋਂ ਕੀਤੀ, ਜੋ ਮੈਕਬੁੱਕ ਪ੍ਰੋ ਐਮ 1 ਤੇ ਯੂਟੀਐਮ ਨਾਲ ਬਣਾਈ ਗਈ ਹੈ.
ਲੋੜਾਂ
- Raspberry Pi Compute Module 5* ਮੈਕਬੁੱਕ ਪ੍ਰੋ ਐਮ 1 ਨਾਲ ਯੂਟੀਐਮ ਇੰਸਟਾਲ ਕੀਤਾ ਗਿਆ ਹੈ
- ਉਬੁੰਟੂ 24.0.4 LTS, arm64
- Qt ਵਰਜ਼ਨ 6.10.1
- QtCreator 18
ਯੂਟੀਐਮ ਵਿੱਚ ਕੰਪਿ computerਟਰ ਮੋਡੀਊਲ5ਅਤੇ ਉਬੁੰਟੂ ਦੀ ਸਥਾਪਨਾ ਅਤੇ ਸੈਟਅਪ ਇਸ ਬਲੌਗਪੋਸਟ ਦੀ ਸਮਗਰੀ ਨਹੀਂ ਹੈ, ਕਿਉਂਕਿ ਇੰਟਰਨੈਟ ਵਿੱਚ ਬਹੁਤ ਸਾਰੇ ਟਿutorialਟੋਰਿਅਲ ਲੱਭੇ ਜਾ ਸਕਦੇ ਹਨ.
ਸੈਟਅਪ ਰਸਬੇਰੀ ਸੀਐਮ 5
- ਇਮੇਜਰ ਨਾਲ ਫਲੈਸ਼ ਚਿੱਤਰ ਨੂੰ eMMC Raspberry Pi ਕਰੋ
- ਇੰਸਟਾਲੇਸ਼ਨ ਦੀ ਪਾਲਣਾ ਕਰੋ ਅਤੇ ਰਿਮੋਟ ਕਨੈਕਟ (ਐਸਐਸਐਚ) ਲਈ ਸੈਟਿੰਗ ਨੂੰ ਨਾ ਭੁੱਲੋ
- ਮੇਰੇ ਕੇਸ ਵਿੱਚ ਐਸਐਸਐਚ -> ਨਾਲ ਆਰਪੀਆਈ ਨਾਲ ਆਈਪੀ ਐਡਰੈੱਸ 192.168.2.194 ਅਤੇ ਯੂਜ਼ਰ ਪਾਈ -> ਨਾਲ ਆਪਣੇ ਉਬੁੰਟੂ ਹੋਸਟ ਤੋਂ ਕਨੈਕਟ ਕਰੋ
ssh [email protected]- ਲੋੜੀਂਦਾ ਸਾਫਟਵੇਅਰ ਇੰਸਟਾਲ ਕਰੋ:
sudo apt-get install libboost-all-dev libudev-dev libinput-dev libts-dev libmtdev-dev libjpeg-dev libfontconfig1-dev libssl-dev libdbus-1-dev libglib2.0-dev libxkbcommon-dev libegl1-mesa-dev libgbm-dev libgles2-mesa-dev mesa-common-dev libasound2-dev libpulse-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-alsa libvpx-dev libsrtp2-dev libsnappy-dev libnss3-dev "^libxcb.*" flex bison libxslt-dev ruby gperf libbz2-dev libcups2-dev libatkmm-1.6-dev libxi6 libxcomposite1 libfreetype6-dev libicu-dev libsqlite3-dev libxslt1-devsudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libx11-dev freetds-dev libsqlite3-dev libpq-dev libiodbc2-dev firebird-dev libxext-dev libxcb1 libxcb1-dev libx11-xcb1 libx11-xcb-dev libxcb-keysyms1 libxcb-keysyms1-dev libxcb-image0 libxcb-image0-dev libxcb-shm0 libxcb-shm0-dev libxcb-icccm4 libxcb-icccm4-dev libxcb-sync1 libxcb-sync-dev libxcb-render-util0 libxcb-render-util0-dev libxcb-xfixes0-dev libxrender-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-glx0-dev libxi-dev libdrm-dev libxcb-xinerama0 libxcb-xinerama0-dev libatspi2.0-dev libxcursor-dev libxcomposite-dev libxdamage-dev libxss-dev libxtst-dev libpci-dev libcap-dev libxrandr-dev libdirectfb-dev libaudio-dev libxkbcommon-x11-dev gdbserver- Qt 6 ਇੰਸਟਾਲੇਸ਼ਨ ਲਈ ਇੱਕ ਫੋਲਡਰ ਬਣਾਓ:
sudo mkdir /usr/local/qt6- ~/.bashrc ਦੇ ਅੰਤ ਵਿੱਚ ਕੋਡ ਦੇ ਹੇਠਾਂ ਦਿੱਤੇ ਟੁਕੜੇ ਨੂੰ ਜੋੜੋ ਅਤੇ ਤਬਦੀਲੀਆਂ ਨੂੰ ਅਪਡੇਟ ਕਰੋ:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/qt6/lib/
source ~/.bashrcਉਬੁੰਟੂ 24.04 LTS ਸੈੱਟਅੱਪ ਕਰੋ
- ਸੌਫਟਵੇਅਰ ਪੈਕੇਜਾਂ ਦੇ ਨਵੀਨਤਮ ਸੰਸਕਰਣਾਂ ਨੂੰ ਅੱਪਡੇਟ ਕਰੋ:
sudo apt update
sudo apt upgrade- ਹੇਠ ਲਿਖੇ ਪੈਕੇਜ ਇੰਸਟਾਲ ਕਰੋ:
sudo apt-get install make cmake build-essential libclang-dev clang ninja-build gcc git bison python3 gperf pkg-config libfontconfig1-dev libfreetype6-dev libx11-dev libx11-xcb-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-util-dev libxcb-xinerama0-dev libxcb-xkb-dev libxkbcommon-dev libxkbcommon-x11-dev libatspi2.0-dev libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev python3-html5lib libxcb-dri3-dev libxkbfile-dev libxshmfence-dev libxrandr-dev libxcursor-dev libxcomposite-dev libdrm-dev libwayland-devਬਿਲਡਿੰਗ Qt6
Qt6 ਬਣਾਉਣ ਦੀਆਂ ਦੋ ਸੰਭਾਵਨਾਵਾਂ ਹਨ. ਡਾਊਨਲੋਡ ਕਰਨ ਲਈ ਇੱਕ "single" (https://download.qt.io/official_releases/qt/6.10/6.10.1/single/qt-everywhere-src-6.10.1.tar.xz) ਸੰਸਕਰਣ ਹੈ, ਜਿਸ ਵਿੱਚ qtbase ਅਤੇ ਸਾਰੇ ਸਬਮੋਡੀਊਲ ਸ਼ਾਮਲ ਹਨ। ਇਹ ਬਹੁਤ ਭਾਰੀ ਚੀਜ਼ ਹੈ ਅਤੇ ਇਸ ਨੂੰ ਕੰਪਾਇਲ ਕਰਨ ਲਈ ਬਹੁਤ ਜ਼ਿਆਦਾ ਸ਼ਕਤੀ ਅਤੇ ਸਮੇਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
ਮੇਰੀ ਸਿਫਾਰਸ਼ ਹੈ, qtbase ਨੂੰ ਅਧਾਰ ਦੇ ਤੌਰ ਤੇ ਕੰਪਾਇਲ ਕਰੋ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਸਿਰਫ ਹਰੇਕ ਸਬਮੋਡੀਊਲ ਨੂੰ ਕੰਪਾਇਲ ਕਰੋ ਜਿਸਦੀ ਤੁਹਾਨੂੰ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਲੋੜ ਹੈ.
- sysroot ਅਤੇ qt6 ਲਈ ਫੋਲਡਰ ਬਣਾਓ। ਮੈਂ ਇਸ ਫੋਲਡਰ ਨੂੰ ਆਪਣੇ ਦਸਤਾਵੇਜ਼ਾਂ / ਕਰਾਸ-ਕੰਪਾਈਲ / raspi-os-trixie ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਬਣਾਉਂਦਾ ਹਾਂ.
mkdir ~/Documents/Qt-Cross-Compile ~/Documents/Qt-Cross-Compile/raspi-os-trixie
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie
mkdir rpi-sysroot rpi-sysroot/usr rpi-sysroot/opt
mkdir qt6 qt6/host qt6/pi qt6/host-build qt6/pi-build qt6/src- QtBase ਸਰੋਤ ਕੋਡ ਡਾਊਨਲੋਡ ਕਰੋ
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/src
wget https://download.qt.io/official_releases/qt/6.10/6.10.1/submodules/qtbase-everywhere-src-6.10.1.tar.xz
tar xf qtbase-everywhere-src-6.10.1.tar.xz- qtbase-everywhere-src-6.10.1 ਦਾ ਨਾਮ ਬਦਲ ਕੇ qtbase, ਕਿਉਂਕਿ qttranslations qtbase-everywhere-src-6.10.1 ਨਾਲ ਕੰਮ ਨਹੀਂ ਕਰ ਸਕਦੇ
mv qtbase-everywhere-src-6.10.1 qtbaseਮੇਜ਼ਬਾਨ ਲਈ Qt6 ਬਣਾਓ
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/host-build
cmake ../src/qtbase/ -GNinja -DCMAKE_BUILD_TYPE=Release -DQT_BUILD_EXAMPLES=OFF -DQT_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=$HOME/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/host
cmake --build . --parallel 8
cmake --install .ਬਾਈਨਰੀਆਂ ~/ਦਸਤਾਵੇਜ਼ਾਂ/Qt-Cross-Compile/raspi-os-trixie/qt6/host ਵਿੱਚ ਹੋਣਗੀਆਂ
ਆਰਪੀਆਈ ਲਈ Qt6 ਬਣਾਓ
ਐਸਐਸਐਚ ਦੁਆਰਾ ਆਰਸਿੰਕ ਦੀ ਵਰਤੋਂ ਕਰਦਿਆਂ ਆਰਪੀਆਈ ਤੋਂ ਕੁਝ ਫੋਲਡਰਾਂ ਨੂੰ ਕਾਪੀ ਅਤੇ ਪੇਸਟ ਕਰੋ.
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie
rsync -avzS --rsync-path="rsync" --delete [email protected]:/lib/* ~/Documents/Qt-Cross-Compile/raspi-os-trixie/rpi-sysroot/lib
rsync -avzS --rsync-path="rsync" --delete [email protected]:/usr/include/* ~/Documents/Qt-Cross-Compile/raspi-os-trixie/rpi-sysroot/usr/include
rsync -avzS --rsync-path="rsync" --delete [email protected]:/usr/lib/* ~/Documents/Qt-Cross-Compile/raspi-os-trixie/rpi-sysroot/usr/lib
rsync -avzS --rsync-path="rsync" --delete [email protected]:/opt/vc ~/Documents/Qt-Cross-Compile/raspi-os-trixie/rpi-sysroot/opt/vc- ~/Documents/Qt-Cross-Compile/raspi-os-trixie ਵਿੱਚ toolchain.cmake ਨਾਮ ਦੀ ਇੱਕ ਫਾਈਲ ਬਣਾਓ।
ਤੁਹਾਨੂੰ ਲਾਈਨ "set(TARGET_SYSROOT ~/Documents/Qt-Cross-Compile/raspi-os-trixie/rpi-sysroot)" ਨੂੰ ਆਪਣੇ ਵਾਤਾਵਰਣ ਵਿੱਚ ਵਿਵਸਥਿਤ ਕਰਨ ਦੀ ਜ਼ਰੂਰਤ ਹੈ.
cmake_minimum_required(VERSION 3.18)
include_guard(GLOBAL)
set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR arm)
set(TARGET_SYSROOT /home/whale/Documents/Qt-Cross-Compile/raspi-os-trixie/rpi-sysroot)
set(CMAKE_SYSROOT ${TARGET_SYSROOT})
set(ENV{PKG_CONFIG_PATH} $PKG_CONFIG_PATH:/usr/lib/aarch64-linux-gnu/pkgconfig)
set(ENV{PKG_CONFIG_LIBDIR} /usr/lib/pkgconfig:/usr/share/pkgconfig/:${TARGET_SYSROOT}/usr/lib/aarch64-linux-gnu/pkgconfig:${TARGET_SYSROOT}/usr/lib/pkgconfig)
set(ENV{PKG_CONFIG_SYSROOT_DIR} ${CMAKE_SYSROOT})
# if you use other version of gcc and g++ than gcc/g++ 9, you must change the following variables
set(CMAKE_C_COMPILER /usr/bin/aarch64-linux-gnu-gcc-13)
set(CMAKE_CXX_COMPILER /usr/bin/aarch64-linux-gnu-g++-13)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -I${TARGET_SYSROOT}/usr/include")
set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}")
set(QT_COMPILER_FLAGS "-march=armv8-a")
set(QT_COMPILER_FLAGS_RELEASE "-O2 -pipe -DNDEBUG")
set(QT_LINKER_FLAGS "-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed")
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
set(CMAKE_BUILD_RPATH ${TARGET_SYSROOT})
include(CMakeInitializeConfigs)
function(cmake_initialize_per_config_variable _PREFIX _DOCSTRING)
if (_PREFIX MATCHES "CMAKE_(C|CXX|ASM)_FLAGS")
set(CMAKE_${CMAKE_MATCH_1}_FLAGS_INIT "${QT_COMPILER_FLAGS}")
foreach (config DEBUG RELEASE MINSIZEREL RELWITHDEBINFO)
if (DEFINED QT_COMPILER_FLAGS_${config})
set(CMAKE_${CMAKE_MATCH_1}_FLAGS_${config}_INIT "${QT_COMPILER_FLAGS_${config}}")
endif()
endforeach()
endif()
if (_PREFIX MATCHES "CMAKE_(SHARED|MODULE|EXE)_LINKER_FLAGS")
foreach (config SHARED MODULE EXE)
set(CMAKE_${config}_LINKER_FLAGS_INIT "${QT_LINKER_FLAGS}")
endforeach()
endif()
_cmake_initialize_per_config_variable(${ARGV})
endfunction()
set(XCB_PATH_VARIABLE ${TARGET_SYSROOT})
set(GL_INC_DIR ${TARGET_SYSROOT}/usr/include)
set(GL_LIB_DIR ${TARGET_SYSROOT}:${TARGET_SYSROOT}/usr/lib/aarch64-linux-gnu/:${TARGET_SYSROOT}/usr:${TARGET_SYSROOT}/usr/lib)
set(EGL_INCLUDE_DIR ${GL_INC_DIR})
set(EGL_LIBRARY ${XCB_PATH_VARIABLE}/usr/lib/aarch64-linux-gnu/libEGL.so)
set(OPENGL_INCLUDE_DIR ${GL_INC_DIR})
set(OPENGL_opengl_LIBRARY ${XCB_PATH_VARIABLE}/usr/lib/aarch64-linux-gnu/libOpenGL.so)
set(GLESv2_INCLUDE_DIR ${GL_INC_DIR})
set(GLESv2_LIBRARY ${XCB_PATH_VARIABLE}/usr/lib/aarch64-linux-gnu/libGLESv2.so)
set(gbm_INCLUDE_DIR ${GL_INC_DIR})
set(gbm_LIBRARY ${XCB_PATH_VARIABLE}/usr/lib/aarch64-linux-gnu/libgbm.so)
set(Libdrm_INCLUDE_DIR ${GL_INC_DIR})
set(Libdrm_LIBRARY ${XCB_PATH_VARIABLE}/usr/lib/aarch64-linux-gnu/libdrm.so)
set(XCB_XCB_INCLUDE_DIR ${GL_INC_DIR})
set(XCB_XCB_LIBRARY ${XCB_PATH_VARIABLE}/usr/lib/aarch64-linux-gnu/libxcb.so)- ਸੰਪੂਰਨ ਪ੍ਰਤੀਕਾਤਮਕ ਲਿੰਕਾਂ ਨੂੰ ਠੀਕ ਕਰੋ
sudo apt install symlinks
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie
symlinks -rc rpi-sysroot- ਆਰਪੀਆਈ ਲਈ ਸਰੋਤ ਕੋਡ ਕੰਪਾਇਲ ਕਰੋ।
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/pi-build
cmake ../src/qtbase/ -GNinja -DCMAKE_BUILD_TYPE=Release -DINPUT_opengl=es2 -DQT_BUILD_EXAMPLES=OFF -DQT_BUILD_TESTS=OFF -DQT_HOST_PATH=$HOME/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/host -DCMAKE_STAGING_PREFIX=$HOME/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/pi -DCMAKE_INSTALL_PREFIX=/usr/local/qt6 -DCMAKE_TOOLCHAIN_FILE=$HOME/Documents/Qt-Cross-Compile/raspi-os-trixie/toolchain.cmake -DQT_QMAKE_TARGET_MKSPEC=devices/linux-rasp-pi4-aarch64 -DQT_FEATURE_wayland=ON
cmake --build . --parallel 8
cmake --install .- ਬਾਈਨਰੀਆਂ ਨੂੰ ਆਰਪੀਆਈ ਤੇ ਭੇਜੋ.
rsync -avz --rsync-path="sudo rsync" $HOME/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/pi/* [email protected]:/usr/local/qt6QtCreator ਨੂੰ ਕੌਨਫਿਗਰ ਕਰੋ
- ਕੰਪਾਈਲਰ ਸਥਾਪਤ ਕਰੋ
- ਡੀਬੱਗਰ ਸੈੱਟ ਅੱਪ ਕਰੋ
ਡਿਵਾਈਸਾਂ ਨੂੰ ਸੈੱਟ ਅੱਪ
- ਕਰੋ
ਬਟਨ "ਟੈਸਟ" ਨਾਲ ਕਨੈਕਸ਼ਨ ਦੀ ਜਾਂਚ ਕਰੋ
Qt ਸੰਸਕਰਣ ਸੈੱਟ ਅੱਪ*
- ਕਿੱਟਾਂ ਸਥਾਪਤ ਕਰੋ
- ਅਨੁਕੂਲਿਤ ਬਣਾਓ, ਤਾਇਨਾਤ ਕਰੋ ਅਤੇ ਸੈਟਿੰਗਾਂ ਨੂੰ ਚਲਾਓ
Qt ਸਬਮੋਡੀਊਲ ਸ਼ਾਮਲ ਕਰੋ
- ਸਰੋਤ ਕੋਡ ਡਾਊਨਲੋਡ ਕਰੋ:
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/src
wget https://download.qt.io/official_releases/qt/6.10/6.10.1/submodules/qttools-everywhere-src-6.10.1.tar.xz
tar xf qttools-everywhere-src-6.10.1.tar.xz
mv qttools-everywhere-src-6.10.1 qttoolsਤੁਹਾਨੂੰ /workspace/qt-rpi-cross-compilation/qt6/src/qtdeclarative-everywhere-src-6.8.0/dependencies.yaml ਅਤੇ /workspace/qt-rpi-cross-compilation/qt6/src/qtshadertools-everywhere-src-6.8.0/dependencies.yaml'ਤੇ ਨਿਰਭਰਤਾ ਦੀ ਜਾਂਚ ਕਰਨੀ ਪਵੇਗੀ।
ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰੋ ਕਿ ਪਹਿਲਾਂ ਲੋੜੀਂਦੇ ਮੋਡੀਊਲ ਬਣਾਏ ਜਾਣੇ ਚਾਹੀਦੇ ਹਨ ਅਤੇ ਸਥਾਪਤ ਕੀਤੇ ਜਾਣੇ ਚਾਹੀਦੇ ਹਨ।
- ਮੇਜ਼ਬਾਨ ਲਈ ਮੋਡੀਊਲ ਬਣਾਓ।
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/host-build
rm -rf *
$HOME/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/host/bin/qt-configure-module ../src/qttools
cmake --build . --parallel 8
cmake --install .- ਆਰਪੀਆਈ ਲਈ ਮੋਡੀਊਲ ਬਣਾਓ
cd ~/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/pi-build
rm -rf *
$HOME/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/pi/bin/qt-configure-module ../src/qttools
cmake --build . --parallel 8
cmake --install .- ਬਾਈਨਰੀਆਂ ਨੂੰ ਆਰਪੀਆਈ ਤੇ ਭੇਜੋ.
rsync -avz --rsync-path="sudo rsync" $HOME/Documents/Qt-Cross-Compile/raspi-os-trixie/qt6/pi/* [email protected]:/usr/local/qt6ਪ੍ਰਵਾਨਗੀ
ਇਸ ਹਿਦਾਇਤਾਂ ਨੂੰ ਬਣਾਉਣ ਲਈ ਵਰਤੇ ਗਏ ਸਰੋਤ: