Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 将构建选项传递给qbs项目_Qt_Qmake_Qbs - Fatal编程技术网

Qt 将构建选项传递给qbs项目

Qt 将构建选项传递给qbs项目,qt,qmake,qbs,Qt,Qmake,Qbs,我有一个qbs项目,有一些外部库依赖项。只要我不想在项目源文件中指定此依赖项,我宁愿将其作为参数添加到console build命令中 例如:使用qmake时,我可以指定其他qmake控制台参数,如qmake.exe MyProject.pro MYDEFINE=“random text”,并且在项目文件中,我可以在.pro文件中使用此参数作为$$MYDEFINE 如何使用qbs实现类似的功能 在项目中定义属性,例如: Project { property path myCustomL

我有一个
qbs
项目,有一些外部库依赖项。只要我不想在项目源文件中指定此依赖项,我宁愿将其作为参数添加到console build命令中

例如:使用
qmake
时,我可以指定其他qmake控制台参数,如
qmake.exe MyProject.pro MYDEFINE=“random text”
,并且在项目文件中,我可以在
.pro
文件中使用此参数作为
$$MYDEFINE


如何使用
qbs
实现类似的功能

在项目中定义属性,例如:

Project {
     property path myCustomLibPath: "unknown-path"

     Product {
          name: "Awesome Program 3000"

          Depends { name: "cpp" }
          cpp.libraryPaths: [project.myCustomLibPath]

     }
}
然后在命令行args中设置:

qbs build-f/path/to/project.qbs debug project.myCustomLibPath:/path/to/my/lib


这甚至可以通过qt creator实现。

在项目中定义属性,例如:

Project {
     property path myCustomLibPath: "unknown-path"

     Product {
          name: "Awesome Program 3000"

          Depends { name: "cpp" }
          cpp.libraryPaths: [project.myCustomLibPath]

     }
}
然后在命令行args中设置:

qbs build-f/path/to/project.qbs debug project.myCustomLibPath:/path/to/my/lib


这甚至可以通过qt creator实现。

也许您可以定义具有所需选项的不同产品。通过命令行,您可以决定构建哪个产品。来自文档:qbs-f/path/to/project.qbs--products-productname qbs.architecture:x86_64@0rko,嗯,这似乎是一个可能的,但不方便的解决具体情况。由于使用svn,我希望避免创建额外的文件或修改本地文件(现在就是这样)。也许您可以定义具有所需选项的不同产品。通过命令行,您可以决定构建哪个产品。来自文档:qbs-f/path/to/project.qbs--products-productname qbs.architecture:x86_64@0rko,嗯,这似乎是一个可能的,但不方便的解决具体情况。由于使用svn,我希望避免创建额外的文件或修改本地文件(就像现在这样)。