jjzjj

c++ - 为什么 Qt Creator 在包含的路径中找不到包含的 header - 即使 qmake 能够找到它们

我加入了一个已经存在的(开源)Qt4项目以添加一些功能。该项目可以在带有Qt4.8.5的LinuxSlackware上完美编译和运行。作为IDE,我首先使用了KDevelop(与Slackware一起提供),但KDevelop不支持Qt项目文件(因为它主要使用cmake,所以我必须使用makefile来导入项目)。现在我想切换到QtCreator,但包含(相对)路径中的头文件无法识别。例如,项目文件在“dir0/programs/prog1/prog1.pro”中,一些额外的头文件在“dir0/gui/extra.h”中。“dir0/gui”通过INCLUDEPATH+=../../g

c++ - 为什么 qmake 将所有对象 (.o) 文件放到一个目录中?

假设我有一个Qt应用程序,其中在两个不同的命名空间中有两个同名的类:namespacenamespace1{classSomeClass;}namespacenamespace2{classSomeClass;}我有一个根据它的项目目录结构:-->src/-->namespace1/-->someclass.cpp-->namespace2/-->someclass.cpp当我使用qmake编译应用程序时,它会将所有对象(.o)文件放到一个目录中-所以它首先创建someclass.o文件,然后用第二个重写它someclass.o-这是一个名称冲突,所以很糟糕。为什么qmake不考虑源文

c++ - 为什么 Qt 使用自己的 make 工具 qmake?

我刚开始使用Qt并注意到它使用自己的制作工具qmake.为什么Qt使用自己的make工具?是否有什么特别的东西阻止它使用标准的制作工具?qmake是否调用GCCC++编译器? 最佳答案 Qt使用qmake透明地支持Qt的各种插件,包括“moc,元对象编译器”(提供信号和插槽),“uic,ui编译器”(从.ui设计器文件创建头文件),“rcc,资源编译器”(编译资源)。没有什么可以阻止您使用任何您想要的构建系统。然而,这还有很多工作要做。例如,您需要对每个包含具有信号或槽的类的头文件运行“moc”。一般不推荐,尤其是对于刚开始使用Qt

c++ - 我可以在没有 qmake 或 Qt Creator 的情况下使用 Qt 吗?

我想使用Qt进行编程,但我不想使用特殊的编译器或IDE,例如QtCreator和qmake。我想和Kate一起写,用g++编译。我可以编译一个使用Qt和g++的程序吗?如何用g++编译? 最佳答案 当然可以。虽然使用qmake或CMake更方便,但您可以这样做:CXXFLAGS+=-Ipath_to_your_qt_includesLDFLAGS+=-Lpath_to_your_qt_libsLDLIBS+=-lqt-mt(forQt3)或LDLIBS+=-lQtCore-lQtGui(forQt4,addwhatyouneed)m

c++ - 在 Qt、QtCreator 和 QMake 中配置 GCC 编译器开关

我最近尝试使用QtCreator1.3.2、Qt4.6.2和GCC4.4.0(32位版本)在Windows7(64位)上使用一些实验性C++0x扩展编译应用程序并遇到以下(致命)错误:ThisfilerequirescompilerandlibrarysupportfortheupcomingISOC++standard,C++0x.Thissupportiscurrentlyexperimental,andmustbeenabledwiththe-std=c++0xor-std=gnu++0xcompileroptions.在寻找解决方案时,我遇到了线程qmakeandcompile

qt - qmake 和 QT_INSTALL_PREFIX。如何为 Qt 库选择新位置?

我是qmake的新手,我正在尝试构建一个现有的应用程序。Qt最初安装在/usr/local/lib/Qt-4.3.5中,'qmake-queryQT_INSTALL_PREFIX'返回该路径。我已将Qt库移动到另一个位置,生成的Makefile中充满了/usr/local原始路径。如何强制qmake使用我选择的新位置而不重新编译Qt? 最佳答案 我正在研究这个问题,并通过使用qt.conf文件自定义qt找到了一种可行的方法(在qt4.7.2中)。就我而言,我添加了一个qt4-4.7.2/bin/qt.conf(它必须与qmake可执

c++ - 使用 qmake/Qt Creator 与调试/发布库链接

我正在使用QtCreator并且有一个依赖于C++静态库项目的QtGUI项目。我想将GUI应用程序的发布版本与.lib的发布版本和GUI应用程序的调试版本与调试.lib链接。我发现了如何通过在我的.pro文件中包含如下行来向项目添加其他库:LIBS+=-L./libfolder-lmylib.lib但我看不到如何使用不同的-L命令进行发布和调试构建。qmake是否支持这样做? 最佳答案 正常debug:LIBS+=...else:LIBS+=...当用户天真地使用CONFIG+=debug或CONFIG+=release在调试和发布

c++ - 使用 qmake/Qt Creator 与调试/发布库链接

我正在使用QtCreator并且有一个依赖于C++静态库项目的QtGUI项目。我想将GUI应用程序的发布版本与.lib的发布版本和GUI应用程序的调试版本与调试.lib链接。我发现了如何通过在我的.pro文件中包含如下行来向项目添加其他库:LIBS+=-L./libfolder-lmylib.lib但我看不到如何使用不同的-L命令进行发布和调试构建。qmake是否支持这样做? 最佳答案 正常debug:LIBS+=...else:LIBS+=...当用户天真地使用CONFIG+=debug或CONFIG+=release在调试和发布

qt - CMake 与 qmake 的优缺点是什么?

我想知道将CMake用于特定项目而不是qmake的原因,反之亦然。这两种构建系统的优缺点是什么? 最佳答案 两者都是构建系统,但它们根本不是很相似。如果您的项目使用Qt,您可能最好使用qmake。CMake更通用,几乎适合任何类型的项目。qmake和CMake都生成Makefile,由make读取以构建项目。并非所有构建系统都会生成Makefile,但很多都会生成。甚至Makefile也是一种构建系统;它告诉编译器和链接器要做什么,以创建可执行文件(或动态或静态库)。如果你的项目使用了Qt,但你不想使用qmake,你将不得不自己做更

qt - CMake 与 qmake 的优缺点是什么?

我想知道将CMake用于特定项目而不是qmake的原因,反之亦然。这两种构建系统的优缺点是什么? 最佳答案 两者都是构建系统,但它们根本不是很相似。如果您的项目使用Qt,您可能最好使用qmake。CMake更通用,几乎适合任何类型的项目。qmake和CMake都生成Makefile,由make读取以构建项目。并非所有构建系统都会生成Makefile,但很多都会生成。甚至Makefile也是一种构建系统;它告诉编译器和链接器要做什么,以创建可执行文件(或动态或静态库)。如果你的项目使用了Qt,但你不想使用qmake,你将不得不自己做更