其基本语法是: 目标+依赖+命令,只有在目标文件不存在,或目标比依赖的文件更旧,命令才会被执行。由此可见,Makefile和make可适用于任意工作,不限于编程。比如,可以用来管理latex。...4. cmake是跨平台项目管理工具,它用更抽象的语法来组织项目。...另外,需要指出的是,make和cmake主要命令只有一条,make用于处理Makefile,cmake用来转译CMakeLists.txt,而qmake是一个体系,用于支撑一个编程环境,它还包含除qmake...7.makefile在一些简单的工程完全可以人工手下,但是当工程非常大的时候,手写makefile也是非常麻烦的,如果换了个平台makefile又要重新修改。...8.这时候就出现了Cmake这个工具,cmake就可以更加简单的生成makefile文件给上面那个make用。
dont_recurse:支持当前子项目的 qmake 递归。 no_include_pwd:不将当前目录添加到 INCLUDEPATHS。...63、QMAKE_CLEAN 指定生成的文件(例如,通过 moc 和 uic)和要由 make clean 删除的目标文件的列表。...74、QMAKE_DISTCLEAN 指定要由 make distclean 删除的文件列表。 75、QMAKE_EXTENSION_SHLIB 包含共享库的扩展。...如果任何条件为false,qmake 将在构建时跳过此项目(及其子目录)。 注意:如果想在构建时跳过项目或子项目,则建议使用 requires() 函数。....file:明确指定子项目 pro 文件。 不能与 .subdir 修饰符一起使用。 .depends:这个子项目依赖于指定的子项目。 .makefile:子项目的makefile。
qmake根据项目文件中的信息生成一个Makefile。项目文件是由开发人员创建的,通常很简单,但是可以为复杂的项目创建更复杂的项目文件。...建立一个项目 对于简单的项目,只需要在项目的顶层目录中运行qmake来生成一个Makefile。然后你可以运行你的平台的make工具来根据Makefile建立项目。...例如,用于moc文件的扩展名可以在项目文件中使用以下分配来重新定义: QMAKE_EXT_MOC = .mymoc 以下变量可用于重新定义由qmake识别的常用文件扩展名: QMAKE_EXT_MOC修改放置在包含的....file 明确指定子项目专业文件。不能与.subdir修饰符一起使用。 .depends 这个子项目依赖于指定的子项目。 .makefile 子项目的makefile。...测试结果被自动缓存,这也使所有的子项目都可以使用它们。因此,建议在顶层项目文件中运行所有配置测试。 要抑制重新使用缓存结果,请将CONFIG + = recheck传递给qmake。
前言 本文重新配置 buildroot,利用 buildroot 重新交叉编译 Qt,编译完成后将编译产生的可执行文件拷贝到 SD 卡,板子上电后跑到文件系统下再手动运行。...读者需完成Uboot、Kernel 编译,可参考下面,本文只重新配置 rootfs 并重新编译 荔枝派Zero(全志V3S)编译Uboot及配置 荔枝派Zero(全志V3S)编译Kernel...三、编译例程 1、确认 qmake 是否正常 可能电脑里面之前就有 qmake,那么必须指定 qmake 的路径,再查看 qmake 的版本才可行,否则直接 qmake -v 会显示系统上已存在的...(s) in QT: gui widgets: 成功后,会生成一个 Makefile 文件 再执行 make,生成可执行文件 ②、再选择一个 demo cd ../.....stickman.pro make 生成可执行文件 stickman 四、拷贝到 SD 卡 ①、插上 SD 卡,先把 SD 卡的 rootfs 分区里面的文件删除 新打开一个终端 sudo
Qmake的TEMPLATE变量用来设置Qt项目的构建类型。...TEMPLATE变量一般支持以下类型: TEMPLATE变量 作用 app 生成应用(默认) lib 生成项目库 subdirs 生成子项目 vcapp 生成VS项目应用 vclib 生成VS项目库...vsubdirs 生成VS子项目
点击蓝字 关注我们 目录 ubantu16.04搭建Qt环境 下载opensource 安装qmake 安装g++以及依赖库 配置环境 编译原码 安装make 查看qmake是否安装 配置环境变量 qmake.../configure 配置过程中:选择 o ;选择yes;后面回车,稍等片刻 编译原码 直接make编译原码 make #漫长的等待 吐槽一下,编译了快一个小时,这是第三次配置qt环境 安装make sudo...#重新打开终端 qmake -v #又找不到qmake 解决办法: cd /usr/lib/x86_64-linux-gnu/qt-default/qtchooser/ sudo gedit default.conf...# Input SOURCES += main.c 看不懂没关系,下一步生成makefile qmake -makefile 这里生成的makefile比较复杂,就不列举了 ➜ work vim.../work hello world qmake小结: qmake -project qmake -makefile make 安装qtcreator sudo apt-get install qtcreator
由于qmake manual和overview 两章的内容都不多就把它们放在一起翻译了出来 qmake 指南 qmake 是帮助简化跨平台项目开发的构建过程的工具,qmake能自动生成Makefile...无论是不是用Qt写的软件项目都可以使用用qmake qmak 根据工程文件的内容来生成Makefile。...你也可以用qmake生成项目文件。更全面的qmake命令行参数描述,请参阅 Running qmake。 qmake的基本配置功能可以处理大多数的跨平台项目。...构建一个项目 对于许多简单的项目,你只需在工程的顶层目录运行qmake就可以生成Makefile.然后,你可以根据makefile运行平台的make 工具构建项目。 ...更详细的信息,请查看 Using Precompiled Headers
对于使用 fcitx 框架的中文输入法,需要手动编译 fcitx-qt5 生成中文输入法的库文件。 1....设置 qmake 环境变量 首先查看是否已经设置了 qmake 环境变量: echo $PATH 如果显示的信息中含有对应 Qt 中 qmake 的环境变量(类似 x.y/gcc_64/bin 其中 x.y...为 Qt 版本号),则说明已经设置过了 qmake 环境变量,可以到下一步;如果没有设置,则手动临时设置 qmake 环境变量(后续命令都需在该终端进行): export PATH="$HOME/Qt...下载 fcitx-libs 源码 git clone git@github.com:fcitx/fcitx-qt5.git 编译安装 fcitx-libs cd fcitx-libs cmake . make...sudo make install 然后回到上一步重新执行 cmake .
www.samontab.com/web/2012/06/installing-opencv-2-4-1-ubuntu-12-04-lts/ 最好按照上面的步骤安装,提供更多支持,opencv.org有更简便的办法...如果编译完错误,想重新编译,则(进入make的路径,一般是在解压后的文件夹内如/xxxopensource-src/进行make操作) 直接运行下面的命令就行了。...make uninstall make clean rm -rf XXX //XXX 目录 如果是编译过程出错,要重新编译 那就 make clean 然后再 ....在使用静态库时需要在 QMAKE_LFLAGS 后面加上 –static Remember that when you ran make, all the executables were created...先执行build ,再把图片文件放进 生成的xxx-build-desktop-Qt_4_8_3__Qt-4_8_3____目录内。
CONFIG变量是另一个当生成Makefile时qmake用来使用的特殊变量 。...使用这些函数更详细的内容,请查看 qmake Language 。所有函数和它们的描述列表,请查看 Replace Functions 和 Test Functions....下表简要说明了项目类型变量和成描述qmake生成的每一个文件: 模板 qmake输出 app (default) makefile生成一个应用程序 lib makefile生成一个库 aux makefile...当使用subdirs模板时,qmake生成一个makefile用来检查每一个子目录,处理在子目录里找到的工程文件,并执行平台的make 工具生成新的Makefile。...应用程序和库项目模板为你提供了更专业的配置选项用来调整生成过程。
这也是为什么 很多人添加Q_OBJECT宏后不重新运行qmake会出错误的原因。...example_MOCS}) TARGET_LINK_LIBRARIES(example ${ QT_LIBRARIES}) 需要 moc 的文件,用 QT4_WRAP_CPP 处理 生成的文件放入变量...使用时,可以直接 make release 或 make debug 来编译不同的版本 cmake 不同于 qmake,由于 cmake 采用 out-of-source 方式。...故: 建立debug release两目录,分别在其中执行cmake -DCMAKE_BUILD_TYPE=Debug(或Release) 需要编译不同版本时进入不同目录执行make 对生成 msvc...生成工程后使用IDE自带的模式选择。
这个手册里的其它专题包含更详细的使用qmke信息。...因为这是Qt应用程序,我们需要把qt添加到CONFIG行,这样qmake会把相关的库连接,可以确保moc和uic构建行能包含到生成的Makefile里。...生成Makefile,在命令行里你项目目录下,写入命令行: qmake -o Makefile hello.pro 然后根据你用的编译器输入make或者nmake....对于使用Visual Studio用户,qmake也可以生成.dsp或者.vcproj,例如 : qmake -tp vc hello.pro 可调试应用程序 release版本的应用程序不包含任何...Makefile 如果一个文件不存在,停止 qmake 如果某个文件不存在,你也许不希望生成Makefile。
/configure生成makefile 1 ....export MANPATH=$QTDIR/man:$MANPATH export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH 重新打开终端...,测试环境变量: 输入qmake -v 显示 QMake version 2.01a Using Qt version 4.8.6 in /usr/local.../Qt-4.8.6/lib 输入which qmake 显示 /usr/bin/qmake 这样,则环境变量设置成功 参考网址 http://...将VTK_Group_Qt选为ON,然后按c,g生成Makefile文件,之后执行make,sudo make install即可 如果想用QtCreator新建的Qt工程来管理VTK的工程
一般来说,对于32位系统应用,兼容至Win10和WinRT直如重新开发,但通过Qt,只需要对您的应用做一个简单的重新编译即可轻松实现。.../configure -help 1.2.7 编译安装 [root@xiaolong qt-everywhere-opensource-src-5.6.0]# make && make install...mainwindow.cpp mainwindow.ui win_1.cpp win_1.ui window_1.pro ③ 编译程序 [root@xiaolong window_1]# make...将QT编译生成的lib 目录和 plugins 目录,拷贝到qt5.6_lib目录下,然后再将qt5.6_lib目录拷贝至开发板根文件系统待用!.../configure --prefix=PWD/temp --host=arm-linux $make $make install 上述命令执行完成后会在libiconv目录下生成新的temp目录,该目录下存在
操作模式 qmake可以帮助我们在跨平台构建应用程序的时候变得更简单,我们可以通过写简单的几行必要的信息来生成构建文件,我们可以在任何的软件项目中使用qmake qmake基于pro文件生产构建文件...,还有一些简单的控制结构,在最简单的pro文件中,仅仅声明了头文件和源文件,还有一些基本的配置选项,更多的细节请看:如何创造一个简单的pro文件 对于更复杂的项目,你可以创造更复杂的项目文件,关于pro...生成一个MakeFile的时候要搜索所有的子文件夹,并执行路径下的每一个pro文件,并且运行平台的 make工具在新创建的Makefile上,SUBDIRS变量用来包含一系列的子目录 常规配置属性 变量...所生成的Makefile将包含一个语句用来生成所有的版本,如下: make all 在CONFIG选项中添加build_all选项来指定在构建的时候生成两个版本的程序 注意:在CONFIG下的每一个选项都需要包括在花括号中...构建项目文件的时候,它将会生成一个makefile的规则,这个规则允许项目构建所有的模式,可以通过如下的命令来调用 make all 在所有的模式下安装 运行qmake qmake的特性在有很多不同变量的选项下的时候可以被定制
qmake会自动生成MakeFile文件,可以用于任何软件项目中,无论是否由Qt编写。 qmake会注意所有的编译器和平台的依赖性,开发者只需关注自己的代码。...qmake -o Makefile hello.pro 对于Visual Studio开发者,qmake会生成.dsp或.vcproj文件。...当qmake处理工程文件时,会生成一个允许支持debug和release模式的MakeFile规则。...可以通过以下方式调用: make all build_all选项增加到工程文件的CONFIG变量,可以确保工程默认会被两种模式编译。...make build_all选项也可以确保目标的两个版本在安装规则被调用时被安装。 make install 可以自定义依赖于目标平台的构建目标的名称。
qmake 生成 Qt 应用一般会经历如下三个步骤 qmake -project qmake make 那 qmake 是干什么用的呢?...a project file in your current working directory 至于最后一个 make 步骤,就是在通过qmake生成的 Makefile...来编译成目标文件和最终的可执行文件 qmake -project qmake -project 的结果是生成了一个 *.pro 文件 在这个例子中就是 hello.pro 文件 我们可以来看看其中的内容...: -$(DEL_FILE) qmake_image_collection.cpp compiler_moc_source_make_all: compiler_moc_source_clean: compiler_uic_make_all...qmake make echo $?
make install 编译完成后,make install会将编译成果复制到指定的tslib目录中: 将tslib文件夹先整个打包为arm-tslib.tar.bz2文件,后面移植到开发板时用...修改qtbase/mkspecs/linux-arm-gnueabi-g++/中的qmake.conf文件 这个文件默认的内容是: # # qmake configuration for building...= arm-linux-gnueabi-g++ QMAKE_LINK = arm-linux-gnueabi-g++ QMAKE_LINK_SHLIB...cqs QMAKE_OBJCOPY = arm-linux-gnueabi-objcopy QMAKE_NM = arm-linux-gnueabi-nm...libs:编译要用到的库 -make examples:编译生成Qt的例程代码 -nomake tools:不生成Qt的工具 -no-openssl:不使用openssl 2.4 编译 配置前需要先安装
chmod 777 make.sh nano make.sh 复制粘贴下面内容到文件里面 #!...examples make -j16 make install 这里面比较复杂,里面开启和关闭部分项目是为了保证编译可以成功。.../make.sh 8.安装 如果没有报错,就编译完成了。...-project 执行: /root/tina-v853-docker/platform/thirdparty/gui/qt/qt-5.12.9/arm-qt/bin/qmake 执行: make 此时会提示报错...deprecated before Qt 6.0.0 # Input SOURCES += hello.cpp greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 并重新执行一遍
//根据工程文件生成makefile make //根据makefile进行编译,生成debug文件夹 接下来,进入debug...//删除配置文件以及make,如果想再次编译,可以通过qmake和make linux平台上,命令行编译 同样输入: qmake -project...//通过-project参数,将源码生成(*.pro)工程文件 qmake //根据工程文件生成makefile...make //根据makefile进行编译,生成可执行文件 运行: ?....pro项目描述文件 其本质就是一个简化的Makefile,通过不同平台的qmake生成不同平台的Makefile,如下图所示: ? .pro项目描述文件介绍 基本构成如下图所示: ?
领取专属 10元无门槛券
手把手带您无忧上云