问题标签 [qbs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - 未找到产品的依赖项 qt.core
尝试使用 qbs 编译我的项目时,我遇到了很多相同的错误。
像这样:
我使用 QtCreator。我应该“使用 qbs-setup-qt 工具创建一个新的 Qt 配置文件”吗?拜托,你能解释一下是什么意思吗?
qbs - 规则项:如何检查是否需要重新运行?
在我的情况下,Rule
必须在环境更改(工作目录的 svn 修订版)而不是输入文件的更改时调用。因此,根据alwaysRun
,我的规则要么从不(构建失败)要么总是(强制依赖重新构建)被调用。
我需要的是:
- 一种检查是否
Rule
必须运行的方法 - 一种以某种方式缓存规则输出的方法,仅在必要时重建依赖项
c++ - MacOS 上的 Qbs 静态库
我尝试将现有项目从 qmake 移动到 qbs,到目前为止一切正常,但我无法在 MacOS 上链接到该项目中的谷歌测试静态库,而在 Windows 上它工作正常。
在 MacOS 上我得到:-1: error: symbol(s) not found for architecture x86_64
googletest.qbs:
测试.qbs:
qt - Qbs 1.10 module cpp not be loaded
After upgrading QtCreator from 4.4.1 to version 4.5.0 and then updating Qbs from 1.9.0 to version 1.10.0, an error appeared: "... warning: Module cpp could not be loaded." "Product 'ProductName' had errors and was disabled." It was possible to find the following bugreport QBS-709.
However, the link in the last post is not working. Please help me find a solution of this problem.
qt - 如何将一个规则项的输出作为另一个规则项的输入?
我想为我的项目创建自动跨平台安装构建器。出于这个原因,我制作了这个文件 myprojectpackage.qbs:
applicationpackage.qbs 使用一些子模块,看起来像:
所有这些模块都试图找到一些东西并复制到包目录。完成后,我有一个包含便携式应用程序版本的文件夹。该组的每个模块都有典型的结构:
便携式文件夹包完成后,我想制作一个 zip 档案。所以,我需要另一个模块,它将在包模块之后运行。我认为,这样做的唯一方法是将由应用程序包中的模块创建的 .txt 文件作为另一个规则的输入。
我尝试了很多东西(FileTaggers、outputFileTags 等),但没有一个能正常工作。那么有什么方法可以让模块像我想做的那样在管道中工作吗?
qt-creator - Qt Creator:取消选择 qbs 中的一些 Qt 测试?
Qt Creator 可以“运行选定的测试”。qbs 中是否有任何选项可以取消选择某些测试作为默认值?
windows - 最新版本启动失败
我有一个很大的 Qbs 项目,它对多个 qbs 文件有很多依赖(在 Windows 7 上)。
它使用 Qbs 1.8 构建和运行良好。
使用 Qbs 1.10 构建但在启动时失败
我已经看到 Qbs 在 1.9 中处理依赖关系的方式发生了一些变化,但我不知道应该做什么来解决我的问题。
我假设不知何故,这个新版本的链接没有正确完成,因此无法启动应用程序。我尝试通过dependency walker运行我的可执行文件,但它看起来找到了它需要的一切。
编辑
调试模式下的启动错误:
cmake - 在 qbs 项目中添加子模块(使用 cmake 构建)
我现在cmake
用来构建我的项目,我想qbs
在将来迁移到。我有一些来自 github 的开源子模块,它们目前是用 构建的cmake
,并且使用cmake
's包含在我的项目中add_subdirectory
。我试图研究,但add_subdirectory
在 qbs 中没有找到替代品。
我不认为将所有子模块构建系统从cmake
to迁移到qbs
是一个好主意,因为这意味着我也必须迁移子模块的子模块或子模块的子模块 :)
有什么帮助吗?谢谢!
c++11 - qbs build:TypeError:表达式'lib'[未定义]的结果不是对象
我有一个奇怪的问题:
- 我有一个由 cmake 构建的子模块,它将生成一些静态库(名为 A1、A2、A3)(我在这里关注)
- 我编写了一些源代码来包装 A,然后通过 qbs 将其构建为静态库 B
- 我有一个程序 C,它依赖于 B 来运行测试
当我通过 qbs 命令行构建时,它运行良好。但是,当我通过 Qt Creator 4.3.1 构建时,它报告:
creating libB.a
TypeError: Result of expression 'lib' [undefined] is not an object
The following product could not be built for configuration qtc_Desktop_de89834-debug:
C
我单击错误,它链接到 Qt/Qt Creator.app/Contents/Resources/qbs/share/qbs/modules/cpp/gcc.js(行379)。我试图通过添加更多的日志行(即console.warn(libraryDependencies.libraries
)来记录,然后它会注销一组库:
libA1.a,libA2.a,libA3.a,libB.a,,
我不知道为什么它最后会出现一个空的库。提到 A1、A2、A3 和 B 足以构建 C。
这里有人可以帮忙吗?我在 MacOS 上使用 Qt 5.9.1
更新:一切都在 Qt Creator 4.5 上运行,所以我只是转移到 Qt Creator 4.5 :))