zoukankan      html  css  js  c++  java
  • QT Creator 使用SVN的版本号做为编译的版本信息

    在使用qt Creator 开发中,如果想使用 svn 的源代码版本号来作为 build 的一个子版本号或者只是为了识别某个发布版本,与源代码的版本信息对应起来,可以方便调试对应的版本代码,我们可以通过获取svn的最新提交的版本代码号来实现。

    svn中有SubWCRev.exe工具提供获取svn版本号,可以通过批处理文件获取

    批处理文件 get_svn_ver.bat

    setlocal
    
    set SVN_PATH=D:Program FilesTortoiseSVNbin      -- svn路径
    
    
    set WORK_DIR=F:QT Project          -- 项目路径
    
    
    set VERSION_TEMPLATE=F:QT Projectversion_template.h    --版本模板  
    
    
    set VERSION_RELEASE=F:QT Projectversion.h          --生成的版本头文件
    
    
    cd %SVN_PATH% 
    
    SubWCRev.exe "%WORK_DIR%" "%VERSION_TEMPLATE%" "%VERSION_RELEASE%" -f    -- 命令
    版本模板文件
    version_template.h
     
    #ifndef _TMPVERSION_H_
    #define _TMPVERSION_H_
    
    #define VER_MAJOR 1
    #define VER_MINOR 0
    #define SVN_RANGE       $WCRANGE$
    #define SVN_DATE           $WCDATE$        // svn最新提交时间
    #define SVN_URL          $WCURL$            // svn 地址
    #define VER_REVISION     "$WCREV$"         // svn最新提交的版本号   查看svn帮助文档可以看到会进行svn号的替换
    
    #endif //!_TMPVERSION_H_
    将get_svn_ver.bat与version_template.h 复制到项目目录下
    在qt creator中设置一下
    1. 选择 Qt Creator 左侧的项目标签,选择右侧的构建,添加自定义步骤选择 get_svn_ver.bat 作为命令,工作目录设定为工程所在目录(version.h将被放在这里)
    2. 把刚添加的自定义步骤顺序调整到最上面
    3. 在项目中引入头文件version.h ,并在项目中使用宏 VER_REVISION ,就可以显示版本号

    每次编译 都会执行该批处理 获取最新的svn版本号, 并重新生成version.h 

  • 相关阅读:
    CSS3实现小黄人动画
    CSS3实现时间轴效果
    CSS3实现8种Loading效果【二】
    Delphi面向对象的编程思想
    delphi 格式转换
    FindWindow和FindWindowEx函数使用
    delphi TStringList 用法详解
    ExtractFileDir 与 ExtractFilePath 的区别
    C++模板与群体数据
    C++多态性
  • 原文地址:https://www.cnblogs.com/seer/p/5006503.html
Copyright © 2011-2022 走看看