zoukankan      html  css  js  c++  java
  • qmake

    在手工连编 Qt 之前,下面这些环境变量必须被设置:

    1  QMAKESPEC  
    这个必须设置为你所使用的系统的平台和编译器的组合。  
    举例来说,加入你使用的是Windows和Microsoft Visual Studio,你应该把环境变量设
    置为win32-msvc。如果你使用的是Solaris和g++,你应该把环境变量设置为solaris-g++。
    当你在设置 QMAKESPEC 时,可以从下面的可能的环境变量列表中进行选择:
    aix-64 hpux-cc irix-032 netbsd-g++ solaris-cc unixware7-g++ aix-g++ hpux-g++
    linux-cxx openbsd-g++ solaris-g++ win32-borland aix-xlc hpux-n64 linux-g++
    openunix-cc sunos-g++ win32-g++ bsdi-g++ hpux-o64 linux-icc qnx-g++ tru64-cxx
    win32-msvc dgux-g++ hurd-g++ linux-kcc reliant-64 tru64-g++ win32-watc freebsd-g++
    irix-64 macx-pbuilder reliant-cds ultrix-g++ win32-visa hpux-acc irix-g++ macx-g++
    sco-g++ unixware-g hpux-acc irix-n32 solaris-64 unixware7-cc
    2  QTDIR  
    这个必须设置到Qt被(或者将被)安装到的地方。比如,c:\qt和/local/qt。
    一旦环境变量被设置到qmake目录,$QTDIR/qmake,比如C:\qt\qmake,现在根据你的编译
    器运行make或者nmake。

    qmake的使用

    一般情况下只需要运行下面的几句就可以了:
    qmake -project
    qmake
    make

    工程选项.pro:

    HEADERS 这一行中通常用来指定为这个应用程序创建的头文件

    SOURCES 这一行指定了实现应用程序的源程序文件
    CONFIG这一行是用来告诉qmake关于应用程序的配置   CONFIG += qt warn_on release
      TARGET = helloworld 指定目标的名字
      特定平台的源文件:
       win32 {
           SOURCES += hello_win.cpp
        }
        x11 {
           SOURCES += hello_x11.cpp
        }
        QMAKESPEC 环境变量 在qt/mkspecs中的每一个目录里面,都有一个包含了平台和编译器特定信息的qmake.conf文件。
        “#”注释 你可以为项目文件添加注释。注释由“#”符号开始,一直到这一行的结束。
    模板  

    TEMPLATE = app
    模板变量告诉qmake为这个应用程序生成哪种makefile。下面是可供使用的选择:
         app -  建立一个应用程序的 makefile。这是默认值,所以如果模板没有被指定,这个
    将被使用。
        lib -  建立一个库的 makefile。
        vcapp -  建立一个应用程序的 Visual Studio 项目文件。
        vclib -  建立一个库的 Visual Studio 项目文件。
        subdirs -  这是一个特殊的模板,它可以创建一个能够进入特定目录并且为一个项目
    文件生成 makefile 并且为它调用 make 的 makefile。

    CONFIG 变量
    配置变量指定了编译器所要使用的选项和所需要被连接的库。配置变量中可以添加任何东
    西,但只有下面这些选项可以被 qmake 识别。
    下面这些选项控制着使用哪些编译器标志:
    ?     release -  应用程序将以 release 模式连编。如果“debug”被指定,它将被忽略。
    ?     debug -  应用程序将以 debug 模式连编。
    ?     warn_on -  编译器会输出尽可能多的警告信息。如果“warn_off”被指定,它将被忽略。
    ?     warn_off -  编译器会输出尽可能少的警告信息。
    下面这些选项定义了所要连编的库/应用程序的类型:
    ?     qt -  应用程序是一个 Qt 应用程序,并且 Qt 库将会被连接。
    ?     thread -  应用程序是一个多线程应用程序。
    ?     x11 -  应用程序是一个 X11 应用程序或库。
    ?     windows -  只用于“app”模板:应用程序是一个 Windows 下的窗口应用程序。
    ?     console -  只用于“app”模板:应用程序是一个 Windows 下的控制台应用程序。
    ?     dll -  只用于“lib”模板:库是一个共享库(dll)。
    ?     staticlib -  只用于“lib”模板:库是一个静态库。
    ?     plugin -  只用于“lib”模板:库是一个插件,这将会使 dll 选项生效。
    例如,如果你的应用程序使用 Qt 库,并且你想把它连编为一个可调试的多线程的应用程序,
    你的项目文件应该会有下面这行:
        CONFIG += qt thread debug
    注意,你必须使用“+=”,不要使用“=”,否则qmake就不能正确使用连编Qt的设置了,比如
    没法获得所编译的Qt库的类型了。

  • 相关阅读:
    nullnullUVa 10066 The Twin Towers(LCS水题)
    代码错误zoj1298Domino Effect
    实现图形Qt学习:三维绘图之OpenGL和Qt的结合
    情况数组zoj2412Farm Irrigation
    nullnulle人事管理系统人事档案变更管理人员合同变更
    判断条件UVa 10192 Vacation(LCS水题)
    查询数量查看表的所有相关列信息
    代码提交省赛啊省赛
    输入声音如何搜索一张发音的图片
    数组字符串uva 10405 Longest Common Subsequence(最长公共子序列)
  • 原文地址:https://www.cnblogs.com/feisky/p/1706642.html
Copyright © 2011-2022 走看看