Ubuntu 20.04 上用于 QNX710 的 Qt 6.2.4 - Qt 版本未正确安装
Qt 6.2.4 for QNX710 on Ubuntu 20.04 - Qt version is not properly installed
我尝试构建 Qt 6.2.4,通过 qt-unified-linux-x64-4.3.0-1-online.run 安装在 Ubuntu 20.04 LTS 虚拟机中盒子。
我在 ~/Qt6 for Desktop gcc 64-bit 和源代码中安装了 Qt 6.2.4。
QNX 7.1 安装在 ~/qnx710 中。
我采购了 qnxsdp-env.sh:
$ . ~/qnx710/qnxsdp-env.sh
我在 PATH 中添加了 Qt6.2.4、Ninja 和 CMake:
$ export PATH=$PATH:~/Qt6/6.2.4/gcc_64/bin
$ export PATH=$PATH:~/Qt6/Tools/Ninja
$ export PATH=$PATH:~/Qt6/Tools/CMake/bin
从 https://doc.qt.io/qt-6/building-qt-for-qnx.html#creating-a-toolchain-file-for-qnx
复制了 qnx.cmake 示例
$ cat ~/cmake_support/toolchains/qnx.aarch64le.cmake
set(CMAKE_SYSTEM_NAME QNX)
set(arch gcc_ntoaarch64le)
set(CMAKE_C_COMPILER qcc)
set(CMAKE_C_COMPILER_TARGET ${arch})
set(CMAKE_CXX_COMPILER q++)
set(CMAKE_CXX_COMPILER_TARGET ${arch})
set(CMAKE_SYSROOT $ENV{QNX_TARGET})
创建了构建目录并配置了 qt:
$ mkdir ~/Qt6/6.2.4/qnx_build
$ cd ~/Qt6/6.2.4/qnx_build
$ cmake -GNinja -DCMAKE_TOOLCHAIN_FILE=~/cmake_support/toolchains/qnx.aarch64le.cmake -DQT_HOST_PATH=~/Qt6/6.2.4/gcc_64 -DCMAKE_INSTALL_PREFIX=~/Qt6/6.2.4/qnx ../Src
编译安装
$ cmake --build . --parallel && cmake --install .
一切顺利。
然后我尝试将新的 Qt 版本添加到 Qt Creator,但是由于 Qt 版本未正确安装而失败,请 运行 进行安装。
详细信息:Qt 版本无效。
当然,一旦创建套件,它就会失败并且无法使用。
知道如何解决这个问题吗?
Qt版本确实没有正确安装
qmake 需要目标库的特定目录
$ ~/Qt6/6.2.4/qnx/bin/qmake -v
QMake version 3.1
Using Qt version 6.2.4 in /home/werner/qnx710/target/qnx7/home/werner/Qt6/6.2.4/qnx/lib
所以要修复 QT Creator,我只需创建一个符号 link:
$ cd ~/qnx710/target/qnx7
$ mkdir -p home/werner
$ ln -s ~/Qt6 .
我尝试构建 Qt 6.2.4,通过 qt-unified-linux-x64-4.3.0-1-online.run 安装在 Ubuntu 20.04 LTS 虚拟机中盒子。
我在 ~/Qt6 for Desktop gcc 64-bit 和源代码中安装了 Qt 6.2.4。
QNX 7.1 安装在 ~/qnx710 中。
我采购了 qnxsdp-env.sh:
$ . ~/qnx710/qnxsdp-env.sh
我在 PATH 中添加了 Qt6.2.4、Ninja 和 CMake:
$ export PATH=$PATH:~/Qt6/6.2.4/gcc_64/bin
$ export PATH=$PATH:~/Qt6/Tools/Ninja
$ export PATH=$PATH:~/Qt6/Tools/CMake/bin
从 https://doc.qt.io/qt-6/building-qt-for-qnx.html#creating-a-toolchain-file-for-qnx
复制了 qnx.cmake 示例$ cat ~/cmake_support/toolchains/qnx.aarch64le.cmake
set(CMAKE_SYSTEM_NAME QNX)
set(arch gcc_ntoaarch64le)
set(CMAKE_C_COMPILER qcc)
set(CMAKE_C_COMPILER_TARGET ${arch})
set(CMAKE_CXX_COMPILER q++)
set(CMAKE_CXX_COMPILER_TARGET ${arch})
set(CMAKE_SYSROOT $ENV{QNX_TARGET})
创建了构建目录并配置了 qt:
$ mkdir ~/Qt6/6.2.4/qnx_build
$ cd ~/Qt6/6.2.4/qnx_build
$ cmake -GNinja -DCMAKE_TOOLCHAIN_FILE=~/cmake_support/toolchains/qnx.aarch64le.cmake -DQT_HOST_PATH=~/Qt6/6.2.4/gcc_64 -DCMAKE_INSTALL_PREFIX=~/Qt6/6.2.4/qnx ../Src
编译安装
$ cmake --build . --parallel && cmake --install .
一切顺利。
然后我尝试将新的 Qt 版本添加到 Qt Creator,但是由于 Qt 版本未正确安装而失败,请 运行 进行安装。 详细信息:Qt 版本无效。
当然,一旦创建套件,它就会失败并且无法使用。
知道如何解决这个问题吗?
Qt版本确实没有正确安装
qmake 需要目标库的特定目录
$ ~/Qt6/6.2.4/qnx/bin/qmake -v
QMake version 3.1
Using Qt version 6.2.4 in /home/werner/qnx710/target/qnx7/home/werner/Qt6/6.2.4/qnx/lib
所以要修复 QT Creator,我只需创建一个符号 link:
$ cd ~/qnx710/target/qnx7
$ mkdir -p home/werner
$ ln -s ~/Qt6 .