github中的一个基于素描图像作为输入的3D对象检索的开源草图搜索引擎
一、QT是什么(网上):
1、Qt 是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。
2、Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,易于扩展,允许组件编程。
二、.pro文件:
Qt中的Pro文件一般是不能直接用Make或Nmake编译的,因此对用的工具是qmake,可以生产makefile文件,之后再进行make操作。而makefile文件就是通过Pro文件生成的。简介PRO格式文件有三种文件格式:PRO格式文件是Qt软件开发工具创建的项目文件,支持跨平台,不过在运行的之前,要使用QT命令将所有的信息进行编译,PRO格式文件包含文件有临时工程文件,源代码文件,项目库文件,还有一些其他的文件格式,如代码源文件QRC格式文件、项目文件是PRI文件,编译源文件是TS格式文件,样式文件。
三、说说Makefile那些事儿
https://blog.csdn.net/wrx1721267632/article/details/52840355
1.shell的定义:
在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。
同时它又是一种程序设计语言。作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。
2.集成开发环境(IDE,Integrated Development Environment ):
是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。如微软的Visual Studio系列,Borland的C++ Builder、Delphi系列等。该程序可以独立运行,也可以和其它程序并用。IDE多被用于开发HTML应用软件。例如,许多人在设计网站时使用IDE(如HomeSite、DreamWeaver等),因为很多项任务会自动生成。
3.GNU操作系统:
类Unix 操作系统,由一系列应用程序、系统库和开发工具构成的软件集合 , 并加上用于资源分配和硬件管理的内核。
4.一个Makefile例子:
https://blog.csdn.net/dongdong0071/article/details/52040559
四、CMake和Make之间的区别
https://blog.csdn.net/android_ruben/article/details/51698498
每一个工程都有它自己的规则和细微的差别,这会使得每次在复用的时候会变得很痛苦。这就是我们创建这个makefile文件的原因。 构建步骤精确的记录在你提供的这个makefile文件中。“Make” 当源码文件发生变化时自动的指出哪一个文件需要更新。 同时它也自动确定以适当的顺序进行更新文件,当一个非源码文件依赖的另一个非源码文件发生改变时。
每次当我们改变了系统中的一小部分源码的时候,重新编译整个程序的效率是很低的。因此,党我们改变了一小部分的源码文件的时候重新执行“Make”,它将不会重新编译整个程序。它仅仅更新那些直接或者间接依赖这些改变了的源码文件的非源码文件。很酷吧!“Make” 不局限于具体的语言。对于程序中的每一个非源码文件,makefile文件详细的说明了执行需要的shell命令。这些shell命令能够启动编译器产生目标文件,链接器产生可执行文件,ar更新库,镜像生成器格式化文档,等等。。。Make不仅仅局限于构建一个包。你也可以安装或者卸载一个包,生成索引表或者其他一些你经常做的值得你写下来怎么去做的事情。
CMake与Make对比具有以下优点:
五、qmake
qmake是一个协助简化跨平台进行专案开发的构建过程的工具程式,Qt附带的工具之一 。qmake能够自动生成Makefile、Microsoft Visual Studio 专案文件 和 xcode 专案文件。不管源代码是否是用Qt写的,都能使用qmake,因此qmake能用于很多软件的构建过程。
手写Makefile是比较困难而且容易出错,尤其在进行跨平台开发时必须针对不同平台分别撰写Makefile,会增加跨平台开发复杂性与困难度。qmake会根据专案文件(.pro)里面的信息自动生成适合平台的 Makefile。开发者能够自行撰写专案文件或是由qmake本身产生。qmake包含额外的功能来方便 Qt 开发,如自动的包含moc 和 uic 的编译规则。
六、*.pro、*.pri、*.prf、*.prl等四种文件
https://blog.csdn.net/calm_agan/article/details/6769966
七、