QBS 为静态 link MSVC 创建静态库

QBS create static library for static link MSVC

我需要使用 boost 将应用程序构建为独立模块(已经在带有 /MT 标志的静态模式下编译)。使用 Visual studio 17(MSVC) 我的项目由一个静态库和一个控制台应用程序组成。

import qbs 1.0

Project {
    property string SDK: ''
    Product {
        name: 'MyLib'
        type: 'StaticLibary'
        Depends {name: 'cpp'}
        Group {
            name: 'src'
            files: './src/*.cpp'
        }
        Group {
            name: 'include'
            files: './include/MyLib/*.cpp'
        }
        cpp.cxxLanguageVersion: 'c++11'
        Properties {
            condition: qbs.toolchainType.contains('msvc')
            cpp.cxxFlags: ['/MT'] //don't replace default compiller flag /MT
        }
    }
    Product {
        name: 'app'
        type: 'ConsoleApplication'
        Depends {name: 'cpp'}
        Depends {name: 'MyLib'}
        cpp.cxxFlags: ['/MT']
        //othre depends from boost and CPP
    }
}

cpp.cxxFlags: ['/MT']

附加额外的参数,但我需要替换标志。有什么想法吗?

cpp.runtimeLibrary: 'static'

将标志 /MD 替换为 /MT 并在调试版本中附加 'd' 后缀