在linux Ubuntu14.04下移植Qt程序至QNX6.5.0操作系统
来源:互联网 发布:sql管理器绿色版 编辑:程序博客网 时间:2024/06/04 01:16
前言
本文内容主要为如何在Ubuntu14.04上将Qt程序移植到装有Qnx6.5.0操作系统的嵌入式设备(x86架构)上,以供有需要的开发者参考。
准备工作
1.在Ubuntu上安装Qt4.7.1;
2.在Ubuntu上安装QNX Momentics IDE,具体的安装步骤可以参考我以前写的博客:
http://blog.csdn.net/wangqingchuan92/article/details/78511824
3.下载这两个压缩包:qt_qnx_host_linux_x86.tar.gz,qt_qnx_targets.tar.gz(可以向你们的QNX经销商索要)
具体移植过程
1.编写一个Qt小程序,能够编译并运行在linux中:
2.打开linux终端,进入超级用户模式,输入指令:echo “${QNX_TARGET%/target/*}”,定位Momentics IDE的安装目录:
3.将qt_qnx_host_linux_x86.tar.gz解压到Momentics IDE的安装目录,例如我的:
4.进入Qt工程文件夹 ,新建一个文本文件,命名为“Makefile“,然后打开该文本文件,输入如下内容,保存退出:
LIST=OS CPU VARIANTMAKEFILE=GNUmakefileinclude recurse.mk ## eof
5.在该工程文件夹中,新建名为”nto-arm-le”(针对ARM),”nto-arm-le-v7”(针对ARM)以及 “nto-x86-o”(针对x86)子文件夹:
6.在每个文件夹中,新建一个文本文件,命名为”GNUmakefile”,然后打开该文本文件,输入如下内容,保存退出:
ifndef QCONFIGQCONFIG=qconfig.mkendifinclude $(QCONFIG)include $(MKFILES_ROOT)/qmake-qt.mk ## eof
7.接下来就是常规编译:打开终端进入Qt工程文件夹,依次输入make clean,make,make install指令,这样就开始编译了:
8.打开三个子文件夹中的任意一个,可以看到编译后的可执行文件:
9.以上都是在Ubuntu上进行操作,接下来的步骤就是主要在QNX操作系统上进行。首先将主机和目标机通过网线连接设置同一网段,然后在QNX操作系统上新建一个用户,具体设置可以参考我以前写的博客:
http://blog.csdn.net/wangqingchuan92/article/details/78456302
10.在Ubuntu中,将qt_qnx_targets.tar.gz通过ftp传送至QNX中(简单,就不贴图了),然后在QNX上,打开终端,进入压缩包所传至的文件夹,输入指令: # tar xvf qt_qnx_targets.tar.gz -C/usr/qnx650,将文件解压至/usr/qnx650。
11.继续在QNX中,将解压后将/usr/qnx650/target/qnx6/usr以及/usr/qnx650/target/qnx6/x86/usr中的二进制文件拷贝到QNX的/usr目录下,完成对目标机的配置:
# cp -r /usr/qnx650/target/qnx6/usr/* /usr # cp -r /usr/qnx650/target/qnx6/x86/usr/* /usr
12.继续在QNX中,编辑/root/.profile配置文件,输入指令vi /etc/profile,然后在文件末尾输入:
export QWS_DISPLAY=qnx export QWS_KEYBOARD=qnx export QWS_MOUSE_PROTO=qnx export XDG_CONFIG_HOME=/root export QMAKESPEC=unsupported/qws/qnx-i386-g++
13.回到Ubuntu中,通过ftp将Qt工程拷贝到QNX系统上,然后换到QNX上,进入Qt工程所传至的文件夹,找到编译的可执行文件,打开终端,输入如下指令修改权限(简单,就不贴图了):chmod 777 ./test1。
14.点击下图的红框进行操作,进入QNX文本模式:
15.此时进入文本模式。首先回车一下,输入login为root,password为空,然后输入指令: /usr/photon/bin/devi-hid –Pr mouse
16.进入到Qt工程文件夹所在目录,找到可执行文件,输入:./test1 -qws运行程序,成功:
17.输入Ctrl+c退出Qt程序。
PS:虽然步骤16能够运行Qt程序,但会发现运行Qt程序后,键盘不能够输入字符,不过可以通过写脚本的方式让Qt程序运行时能够使用键盘。在步骤15,输入完root和空密码后,进入Qt程序所在文件夹,用vi建立一个脚本命名为do.sh,脚本内容:
#/bin/sh chmod +x ./test1/usr/photon/bin/devi-hid –Pr kbd mouse./test1 -qws
保存退出脚本后,给该脚本加可执行权限:
#chmod +x ./do.sh
最后执行该脚本,这样就可以在Qt程序中使用键盘了:
但是这把用Ctrl+c退出程序系统无反应,所以用鼠标点击右上角的关闭“X”退出到文本模式,但是进入到文本模式后用键盘输入无反应,这个问题先放着,等以后解决。
以上。
参考文档:
1.http://blog.csdn.net/quyunfei/article/details/8977864
2.Qt 4.7.1 for QNX systems
这个Qt 4.7.1 for QNX systems文档我上传到网上了,可以通过这个地址下载,:http://download.csdn.net/download/wangqingchuan92/10118987
- 在linux Ubuntu14.04下移植Qt程序至QNX6.5.0操作系统
- Qt 程序在linux下的发布
- qt程序在linux下打包发布
- 嵌入式Linux下移植QT
- 嵌入式Linux下移植QT
- Hello Qt(在Linux下编写运行Qt程序)
- Hello Qt(在Linux下编写运行Qt程序)
- ubuntu14.04 64bits操作系统下 qt5.3.0的安装配置(doxygen,astyle),qt卸载
- ubuntu下的qt程序移植至ARM开发板
- marline在实时操作系统下的移植
- 将 C++ Qt 程序移植至 Linux 系统
- 移植QT操作系统
- Etherlab在Ubuntu14.04上的移植
- Qt程序在windows 和 linux 下打包发布
- 在Linux 下如何打包免安装的QT程序?
- 怎么在linux下打包免安装的QT程序。
- 把linux运行的Qt程序移植到windows下出现的错误
- Qt程序移植到Firefly开发板(Arm linux)下运行--转载
- 湖南奥昇项目总结
- Ubuntu设置环境变量
- vue 饿了么学习笔记
- 解决安装wine时的依赖问题
- 观察者模式
- 在linux Ubuntu14.04下移植Qt程序至QNX6.5.0操作系统
- navicat 连接远程数据库
- 【转载】wireshark基本用法及过虑规则
- bootstrap-datepicker插件使用
- java的泛型编程
- Oracle两种方式创建自增ID
- poj3087——Shuffle'm Up
- Spark源码的下载和编译
- 图像分割之(一)概述