• 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 

  • 相关阅读:
    Change the default MySQL data directory with SELinux enabled
    CentOS7使用firewalld打开关闭防火墙与端口
    常用screen参数
    Android手机上浏览器不支持带端口号wss解决方案
    How to Create Triggers in MySQL
    QT GUI @创建新的工程
    Linux内核源代码的结构(转)
    ARM体系的7种工作模式
    C语言中强制数据类型转换(转)
    Linux驱动设计—— 中断与时钟@request_irq参数详解
  • 原文地址:https://www.cnblogs.com/seer/p/5006503.html
Copyright © 2020-2023  润新知