zoukankan      html  css  js  c++  java
  • CMAKE设置VS工程中Debug和Release不同的输出名称

    CMAKE在管理工程时,需要同时编译Debug和Release版本,但是两个版本输出的文件无论是lib还是dll,名称都是是完全相同。

    如果要输出在同一个目录中是非常麻烦的,非常容易混淆,可以使用以下命令设置debug和Release输出文件后缀的方式进行区分:

    if(WIN32 AND NOT MINGW)
      if(NOT DEFINED CMAKE_DEBUG_POSTFIX)
        set(CMAKE_DEBUG_POSTFIX "_debug")
      endif()
      if(NOT DEFINED CMAKE_RELEASE_POSTFIX)
        set(CMAKE_RELEASE_POSTFIX "_release")
      endif()
      if(NOT DEFINED CMAKE_RELWITHDEBINFO_POSTFIX)
        set(CMAKE_RELWITHDEBINFO_POSTFIX "_release")
      endif()
      if(NOT DEFINED CMAKE_MINSIZEREL_POSTFIX)
        set(CMAKE_MINSIZEREL_POSTFIX "_release")
      endif()
    endif()

    上面命令分别设置Debug模式下后缀为“_debug”,在Release模式下后缀为“_release”。

    可以在根目录下的的CMakeLists.txt文件中设置该命令,则整个项目中子工程的dll和lib都会添加相应的后缀。

    要注意该命令要放在目标生成之前,放在后面是无效的。

    个人建议只在Debug模式下添加后缀“D”,Release模式下不添加即可区分。

  • 相关阅读:
    ubuntu 16.04 连接无线网络
    linux的内存管理-抛砖引玉
    linux的进程调度-抛砖引玉
    AliOS Things 异步事件框架Yloop
    AliOS Things 云端物联网操作系统
    linux performance tools
    linux进程调度
    linux 内核Lockup机制浅析
    cache和内存屏障
    linux设备模型及实例
  • 原文地址:https://www.cnblogs.com/xuhui24/p/6910328.html
Copyright © 2011-2022 走看看