zoukankan      html  css  js  c++  java
  • 我的航拍直升机 控制基站软件的编写历程(三)——开始读QMKGroundStation的代码

           在QMK的根目录下有很多文件,有一个COPYING文件,这个文件是合GNU的版权有关的信息,GNU GENERAL PUBLIC LICENSE。我们不用去理会它。

           在根目录下还有一些.pro文件,如debian.pro、eeepc.pro、gentoo.pro、osx.pro、suse.pro、win.pro。我们知道,QT是源码级的跨平台,这些文件都是支持不同操作系统平台的工程文件。其中win.pro是windows系统的平台工程文件。

           win.pro的代码如下:

      include( ../examples.pri )

      include(QMapControl.pri)

     

      QWT_ROOT = ../qwt-5.1.1          //这里设置了QWT的目录,系统根目录下的qwt-5.1.1文件夹,这里用的qwt的版本是5.1.1,这个版本还有很多问题,现在已经出了5.2.0了,我们决定用后者,所以这里需要修改

     

      include( $${QWT_ROOT}/qwtconfig.pri )   

     

      SUFFIX_STR = $${RELEASE_SUFFIX}                       //这个还不确定,估计是和编译有关的

     

      INCLUDEPATH += $${QWT_ROOT}/src                    //INCLUDEPATH 描述了编译该工程时编译器需要搜索的#include路径,这里的搜索路径为qwt根目录下的src文件夹

      DEPENDPATH += $${QWT_ROOT}/src                     //DEPENDPATH 描述了建立建立应用程序所依赖的其他文件所在的路径

     

      QWTLIB = qwt$${SUFFIX_STR}                             //这个是和qwt库有关的,qwt需要编译之后才有lib库,在后面的章节中介绍qwt的编译

     

      contains(CONFIG, QwtDll)                                       //接下来的几行还没有搞明白,搞明白再写吧

      {

        DEFINES += QT_DLL QWT_DLL

        QWTLIB = $${QWTLIB}$${VER_MAJ}

      }

     

      win32-msvc:LIBS += $${QWT_ROOT}/lib/$${QWTLIB}.lib              //从接下来的几行来看,本工程可能是用VS编译的

      win32-msvc.net:LIBS += $${QWT_ROOT}/lib/$${QWTLIB}.lib

      win32-msvc2005:LIBS += $${QWT_ROOT}/lib/$${QWTLIB}.lib

      win32-g++:LIBS += -L$${QWT_ROOT}/lib -l$${QWTLIB}

     

      TEMPLATE = app              //为建立应用程序创建Makefile文件                                                       

     

      OBJECTS_DIR = build/.o_win32        //描述了编译连接应用程序过程中产生的中间文件的存放位置

      UI_DIR = build/.ui        

      MOC_DIR = build/.moc

      RCC_DIR = build/.rcc

      DESTDIR = build/bin                        //定义了存放可执行文件的路径

     

      DEFINES += _TTY_WIN_ QWT_DLL QT_DLL _WIN32_

     

      include(global.pri)

    第一、二行和最后一行的include所起的作用是,将 ../examples.pri 、QMapControl.pri和global.pri文件包含到工程里。但是第一行的include( ../examples.pri ),在整个工程目录中没找到examples.pri工程,这个文件在qwt的目录中,在qwt中的examples文件夹下。所以本工程还需要qwt支持,在这里先解释win.pro中的代码,在接下的章节中再说qwt的安装于使用。QMapControl.pri和global.pri两个文件都在工程根目录下,文件中包含了一些头文件和源文件。

            QWT_ROOT = ../qwt-5.1.1  这一行指明了qwt的路径。这里用的qwt的版本是5.1.1。

            include( $${QWT_ROOT}/qwtconfig.pri )这一行包含了在qwt根目录下的qwtconfig.pri文件。

            接下来的解释直接在上面的源码后面进行吧!

    http://qwt.sourceforge.net/   QWT资源

  • 相关阅读:
    kafka 重启consumer 重复消费问题
    预约系统(十) 预约页面--首页
    预约系统(九) 管理页面--部门管理
    预约系统(八) 管理页面--会议室管理
    预约系统(七) 管理页面--用户管理页面
    预约系统(六) 管理页面首页
    预约系统(五) 管理页面框架 密码修改和用户信息功能
    重读C# -- 1.net体系结构
    预约系统(四) 管理页面框架搭建easyUI
    预约系统(三) 登录功能和验证码
  • 原文地址:https://www.cnblogs.com/buffer/p/1510836.html
Copyright © 2011-2022 走看看