支持qnx中的cmake??从 Linux 移植到 QNX

Posted

技术标签:

【中文标题】支持qnx中的cmake??从 Linux 移植到 QNX【英文标题】:cmake in qnx supported?? Porting from Linux to QNX 【发布时间】:2018-10-23 11:40:52 【问题描述】:

QNX 6.5 是否支持 Cmake?

我有一个使用 cmake 的 Linux 平台代码。我需要把它移植到 QNX。

【问题讨论】:

阅读README有什么问题,在支持的平台中没有注明QNX?另请参阅有关该支持的错误报告:gitlab.kitware.com/cmake/cmake/issues/16965。请注意,您仍然可以使用交叉编译为 QNX 构建代码。 【参考方案1】:

您可以使用 CMake,但您需要一个 CMake 工具链文件。这是我在 QNX 6.5 中使用更新编译器 (GCC 4.8.3) 的示例 - 如果您使用的是原始编译器,则需要调整架构并删除 C++11 标志:

set(CMAKE_SYSTEM_NAME QNX)

set(arch gcc_ntox86_gpp)
set(ntoarch x86)
set(QNX_PROCESSOR x86)

set(CMAKE_C_COMPILER qcc)
set(CMAKE_C_COMPILER_TARGET $arch)

set(CMAKE_CXX_COMPILER qcc -lang-c++)
set(CMAKE_CXX_COMPILER_TARGET $arch)
set(CMAKE_CXX_FLAGS "$CMAKE_CXX_FLAGS -Wc,-std=c++11")

set(CMAKE_ASM_COMPILER qcc -V$arch)
set(CMAKE_ASM_DEFINE_FLAG "-Wa,--defsym,")

set(CMAKE_RANLIB $ENVQNX_HOST/usr/bin/nto$ntoarch-ranlib
    CACHE PATH "QNX ranlib Program" FORCE)
set(CMAKE_AR $ENVQNX_HOST/usr/bin/nto$ntoarch-ar
    CACHE PATH "QNX qr Program" FORCE)

【讨论】:

【参考方案2】:

当面向 QNX 7.0 时,Cmake 工作得非常好。 我相信它也适用于 QNX 6.5。

【讨论】:

以上是关于支持qnx中的cmake??从 Linux 移植到 QNX的主要内容,如果未能解决你的问题,请参考以下文章

uboot移植总结

gstreamer移植qnx:交叉编译qnx版本的gstreamer插件库

gstreamer移植qnx:交叉编译glib

gstreamer移植qnx:编写gstreamer插件audio sink和video sink

QNX Hypervisor 2.2 用户手册4 构建QNX Hypervisor系统

QNX Hypervisor 2.2 用户手册4 构建QNX Hypervisor系统