您的位置:首页 > 编程语言

我的航拍直升机 控制基站软件的编写历程(三)——开始读QMK-GroundStation的代码

2009-06-25 11:38 411 查看
在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资源
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐