Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.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
C++ 我是否需要Qt工具链以使用Qt构建的库为目标?_C++_Qt_Shared Libraries_Static Libraries_Toolchain - Fatal编程技术网

C++ 我是否需要Qt工具链以使用Qt构建的库为目标?

C++ 我是否需要Qt工具链以使用Qt构建的库为目标?,c++,qt,shared-libraries,static-libraries,toolchain,C++,Qt,Shared Libraries,Static Libraries,Toolchain,是否有必要使用Qt工具链(pro文件、qmake等)来链接使用Qt实现和构建的库,但它本身只公开C风格的API?库中未使用任何特定于Qt的类 这个问题同时适用于静态库和动态库 必须使用Qt工具才能链接到使用Qt实现的库 绝对不是 生成代码的Qt工具是moc和rcc;如果您的API不使用此工具,那么很可能只使用普通的“C”工具 是一个信号和时隙的工具,甚至C++代码不需要使用QT工具来链接Qt库。您可以使用grep等在make规则中扫描MOC宏的“头”,以了解MOC程序是否应在可执行文件上运行。

是否有必要使用Qt工具链(pro文件、qmake等)来链接使用Qt实现和构建的库,但它本身只公开C风格的API?库中未使用任何特定于Qt的类

这个问题同时适用于静态库和动态库

必须使用Qt工具才能链接到使用Qt实现的库

绝对不是


生成代码的Qt工具是
moc
rcc
;如果您的API不使用此工具,那么很可能只使用普通的“C”工具

是一个信号和时隙的工具,甚至C++代码不需要使用QT工具来链接Qt库。您可以使用grep等在make规则中扫描MOC宏的“头”,以了解

MOC
程序是否应在可执行文件上运行。遵循class.cc在class.h中有一个声明的约定使这变得容易

是将资源与应用程序捆绑在一起的功能。然而,这将适用于Qt应用程序/库,在您的情况下,您只需要与它链接

因此,甚至可以在不使用
qmake
等的情况下创建Qt应用程序/库。但是,您的makefile将需要满足
qmake
等所做的所有可移植性问题,否则您可能不关心这一点


不使用Qt工具有一个折衷方案。但是,大多数Qt功能都可以在没有工具的情况下使用。

我认为不可以。为什么不试试没有Qt工具链?您可以检查依赖项。看看。只要你有所有的依赖项(即Qt DLL),它就应该可以工作