1 Star 0 Fork 1

lightnin_g/VxWorks6.9.4-Qt4.8

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

X100显卡VxWorks6.9.4上运行Qt4.8

介绍

本文描述了使用X100显卡在 vxworks6.9.4操作系统下,如何依赖windml,安装设置 Qt4.8.x, 并介绍了实际目标板上编译运行 Qt demo 程序的过程。

开发环境及工具

  1. vxWorks6.9.4开发环境
  2. Mingw(gcc440)
  3. Strawberry Perl
  4. qt-everywhere-enterprise-src-4.8.6源码包
  5. windml库
  6. Win10(64bit) 开发机操作系统

安装步骤及设置

  1. 安装vxWorks6.9.4开发环境
    默认已安装完成,安装目录为 D:\WindRiver
  2. 安装Perl开发工具
    安装strawberry-perl-5.30.2.1-64bit.msi,选默认安装。
  3. 安装Mingw编译环境
    将MinGW(gcc440)压缩包解压至C盘根目录。
  4. 部署源码包 (DKM和RTP两个目录) 将qt-everywhere-enterprise-src-4.8.6 源码包拷贝至D:\WindRiver\workspace工作空间下并改名为qtarmdkmsmp-4.8.6,形成 D:\WindRiver\workspace\qtarmdkmsmp-4.8.6目录结构; 将另一份qt-everywhere-enterprise-src-4.8.6 源码包拷贝至D:\WindRiver\workspace工作空间并改名为qtarmrtpsmp-4.8.6,形成D:\WR69411_2cluster2core\workspace\qtarmrtpsmp-4.8.6目录结构。
  5. 配置windml库
    配置编译完成。(配置方法参见https://gitee.com/phytium_embedded/x100-windml-driver)
  6. 安装证书文件
    将.qt-license文件放入开发机HOMEPATH下,例如: C:\Users\lenovo。
  7. 设置环境变量
    为系统变量Path增加mingw和qt的bin路径,新建c:\mingw\bin;d:\WindRiver\workspace\qtarmdkmsmp-4.8.6\bin两项。
    增加新的环境变量WIND_WORKSPACE_PATH=D:\WindRiver\workspace

Qt DKM图形库的构建及Qt用例运行

  1. Qt DKM图形库的构建 确认windml库正确构建完成,打开VxWorks的开发shell终端,依次执行下列命令:
    cd workspace
    cd qtarmdkmsmp-4.8.6
    set LIB_SMP=_smp
    set WIND_WORKSPACE_PATH = D:\WindRiver\workspace
    configure.exe -confirm-license -embedded -platform win32-g++ -xplatform qws/vxworks -arm7dkm-g++ -exceptions -qt-freetype -qt-zlib -qt-libpng -qt-libtiff -qt-libjpeg -qt-libmng -no-accessibility -no-qt3support -no-openssl -nomake docs -no-script -no-webkit -prefix/tgtsvr/qtarmdkmsmp-4.8.6 -static -release -nomake examples
    mingw32-make –j 4
  2. 操作系统镜像的构建
    创建一个 VxWorks Image Project(VIP)工程(参考创建 VxWorks 镜像工程),或者在 现有的 VIP 工程中完成如下配置:
    Kernel Configuration 中添加组件
    – INCLUDE_STANDALONE_SYM_TBL
    – INCLUDE_WINDML
    – GLOBAL_VIRT_MEM_REGION_SIZE=0x8000000
    – KERNEL_HEAP_SIZE= ((unsigned int)(sysMemTop() - FREE_MEM_START_ADRS) / 3 * 1)
    – RTP_HEAP_INIT_SIZE=0x800000
    – BUNDLE_POSIX
    – INCLUDE_RTP
    – INCLUDE_SHARED_DATA
    – INCLUDE_USB_XHCI_HCD_INIT
    – INCLUDE_USB-GEN2_KEYBOARD_INIT
    – INCLUDE_USB-GEN2_MOUSE_INIT
    – INCLUDE_USB_GEN2_STORAGE
    – INCLUDE_USB_GEN2_STORAGE_INIT
    – BUNDLE_RTP_DEPLOY
    – BUNDLE_RTP_DEVELOP
    – BUNDLE_RTP_POSIX_PSE52
    – INCLUDE_POSIX_ADVISORY_FILE_LOCKING
    – INCLUDE_POSIX_PTHREAD_SCHEDULER
    – NUM_FILES=200
    – RTP_FD_NUM_MAX=200
    – INCLUDE_POSIX_MAPPED_FILES
    – INCLUDE_POSIX_SHM
    – INCLUDE_POSIX_SHM_API
    – INCLUDE_HRFS
    – INCLUDE_HRFS_FORMAT
    – INCLUDE_HRFS_HISPEED_WRITE_MODE
    – HRFS_DEFAULT_MAX_BUFFER=1024
    – HRFS_DEFAULT_MAX_FILES=200
    – INCLUDE_XBD_RAMDRV
    – INCLUDE_XBD_PART_LIB
    在usrAppInit.c中添加创建RAMdisk的代码;
    rebuilt project,完成工程编译。
  3. 运行Qt DKM用例 准备一张分区为FAT32的优盘。将D:\WindRiver\workspace\qtarmdkmsmp-4.8.6\lib下的fonts文件夹拷到优盘根目录; 将D:\WindRiver\workspace\qtarmdkmsmp-4.8.6\demos\affine下的affine文件拷到优盘根目录。 在优盘上编写运行脚本a.txt, 内容为: cd "/bd0"
    sp (putenv,"QT_QWS_FONTDIR=/bd0/fonts")
    sp (putenv,"LD_LIBRARY_PATH=/bd0")
    ld < affine
    taskSpawn("main", 200, 0x01000000, 0x100000, main, 0,0,0,0,0,0,0)
    在镜像正常启动后,命令提示符下键入:
    cd “/bd0”
    <a.txt
    启动Qt DKM用例。

Qt RTP图形库的构建及Qt用例运行

  1. Qt DKM图形库的构建 确认windmlrtp库正确构建完成,打开VxWorks的开发shell终端,依次执行下列命令:
    cd workspace
    cd qtarmrtpsmp-4.8.6
    set LIB_SMP=_smp
    set WIND_WORKSPACE_PATH = D:\WindRiver\workspace
    configure -confirm-license -embedded -platform win32-g++ -xplatform qws/vxworks-arm7rtp-g++ -exceptions -qt-freetype -qt-zlib -qt-libpng -qt-libtiff -qt-libjpeg -qt-libmng -no-accessibility -no-qt3support -no-openssl -nomake examples -nomake docs -nomake -translations -no-script -no-webkit-prefix /bd0/qtarmv7rtp -shared -release -D QT_NO_QWS_MULTIPROCESS -DQT_NO_PROCESS
    mingw32-make –j 4

  2. 运行Qt RTP用例 使用DKM相同的内核镜像及优盘。添加如下文件,将D:\WindRiver\workspace\qtarmrtpsmp-4.8.6\lib下的libQtCore.so.4、libQtGui.so.4文件拷到优盘根目录; 将D:\WindRiver\vxworks-6.9\target\lib\usr\root\ARMARCH7gnu\bin下的libc.so.1文件拷到优盘根目录;将D:\WindRiver\workspace\qtarmrtpsmp-4.8.6\demos\affine下的affine文件拷到优盘根目录并更名为affine.vxe。
    在优盘上编写运行脚本r.txt, 内容为:
    putenv "LD_LIBRARY_PATH=/bd0"
    putenv "QT_QWS_FONTDIR=/bd0/fonts"
    putenv "QWS_DATA_HOME=/tmp"
    putenv "QWS_CACHE_HOME=/tmp/data/"
    cd "/bd0"
    rtpSp("affine.vxe -qws",220,0x100000,0,0x1000000)
    在镜像正常启动后,命令提示符下键入:
    cd “/bd0”
    <r.txt
    启动Qt RTP用例。

具体使用方法可参考VxWorks6.9_Qt_User_Guide.pdf

支持VxWorks下Qt第三方特性:

1.  中文输入法
2.  pdf文件显示
3.  Qwt

需要第三方特性支持的请联系 79102124@qq.com

空文件

简介

本项目介绍在飞腾板卡上运行Qt应用的方法。 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/lightnin-g/qt486-vxworks.git
git@gitee.com:lightnin-g/qt486-vxworks.git
lightnin-g
qt486-vxworks
VxWorks6.9.4-Qt4.8
master

搜索帮助

Cb406eda 1850385 E526c682 1850385