❶ Qt 软件中怎么自动加入build版本号
当进入解压好的源码包后,使用./configure –help命令,可以获得相应帮助,那我们只要选取参数部分看看-release这个参数显而易见,就是编译Qt以发布版的模式进行,一般来说,最后系统完成后,库就应该是发布版。-release与上面对应,自然是调试版了,如果开发的话,可以选择它吧。-debug-and-release囧,上面那两个的儿子。-developer-build囧,我错了,开发者也可以用这个的,选了这个后,可以进行自动测试,不过还没去用过,以后可以研究研究。-opensource-commercial这两个参数是指是编译是商业版本的,还是开源版本呢,视个人情况而定。-shared-static这两个参数是指Qt的lib以动态还是静态编译生成,这自然也是视个人需要的。-no-fast-fast这两个就很有关系,如果对自己的电脑性能很有信心,那就选第一个,那所有的工程文件都会生成到makefiles中,那编译的时间,估计可以看完变形金刚了。如果选第二个,那就加入子目录和库到makefiles,这样就能加快编译的速度。-no-largefile-largefile顾名思义,支不支持大文件,一般来说,嵌入式里是不会有从超过4G的大文件的,那就选第一个吧。-no-exceptions-exceptions计算机英语够好的人都该懂,这个自然就是异常情况,选则编译器支持抛出异常,否则不支持。-no-accessibility-accessibility可访问性的支持,说实话,这个我真不知道有什么有用了。等哪天发现了,再来好好解释。-no-stl-stl是都加入stl的支持,stl,这应该算是C++程序员应该都了解了,再不济,那也总听说过大名吧。no-sql-<driver>-qt-sql-<driver>-plugin-sql-<driver>这 个可要好好说明下,一般来说,对于一个优秀的项目开发,数据库是必不可少的,qt也自带了大多数数据库驱动,可以完美地支持数据库的使用。对于数 据库的使用,我们可以直接qt驱动编译进去,或者以插件的形式编译进去。一般来说,最简单地就是直接编译进去,但使用插件形式的可以更加灵活,针对不同的 需求将驱动插件添加。其中,<>代表的是驱动名,如果我想直接添加sqlite的支持话,形式如下:-qt-sql-sqlite。其他名称 可以自己查看参数里,有详细地介绍。-system-sqlitesqlite真受欢迎啊,当然那么优秀的嵌入式数据库,本人也是基本使用它来进行开发。这个参数意思是使用操作系统上的sqlite数据库,如果是不太会移植的,可以考虑直接使用qt自带的驱动。-no-qt3support-qt3support这个也是简洁易懂,加不加对qt3的支持。no-xmlpatterns-xmlpatterns选择对xml的支持,如果对网络无需求的话,就不用加了。-no-phonon-phononphonon是qt中处理多媒体的模块,比如放放视频什么来着,不过本人从没用过,也是根据需要选择的。-no-phonon-backend-phonon-backend与上面类似,只不过这两是以插件的形式加入支持。-no-svg-svg是否加入svg的支持,svg即可缩放矢量图形。-no-webkit-webkit是否加入webkit的支持,这可是个好东西,不过如果跟网络不搭界的话,还是不支持吧。-no-scripttools-scripttools是否加入脚本工具的支持,这对php等脚本工程师来说是个很棒的参数,但对于我这样菜鸟,就别提了。-platform target目标平台,这可是关键了,如果不注意的话,编译出来是x86上的话,哪怕是再牛的嵌入式工程师来也没法帮你移植到开发板上。通常,本人是linux-arm-g++。-no-mmx-no-3dnow-no-sse-no-sse2这四个参数是针对CPU的指令集,老实说,我也不甚了解,不过,对于开发并不是影响很大。-qtnamespace把qt的库封装到命名空间,没啥重要用处,依个人爱好加吧。-qtlibinfix将所有的qt的.so库重命名,也没啥大用处。-no-sql-<driver>-qt-sql-<driver>-plugin-sql-<driver>-system-sqlite这是相当明显的,如果这都看不出来,,囧,那您一定比我近视(本人800度近视。。)就 是说如果是-no-XX-,就说明编译时不选择这个参数,如过是-qt-XX-,说明我们可以编译直接选用qt自带的驱动,如果是 -plugin-XX-,就是将驱动以插件形式编译,而-system-XXX,当然是使用操作系统提供的驱动,不过那就需要您自己移植了,而且有时还要 用第三方的API,就方便来说非常麻烦,但是不排除您是牛人要好好玩玩的情况。接下来,我们接着研究配置参数。-qt-zlib-system-zlib想 必经过上面的讲解,参数的意思已经很快得知,就是选择qt带的zlib库还是系统的zlib。zlib库是用于文件和资料压缩的库,对于新入嵌入式的人来 说,可能并无太大的用处,但是在以后的实际开发中,特别是对于多媒体图像图形的工程师来说,就肯定用到,因为图形图像的压缩都要使用或涉及到这个库。-no-gif-qt-gif这是选择gif的支持,如果选择qt支持的话,那在用qt开发的项目中,就能显示gif图,gif也是比较普遍的图片格式了,英文全称是Graphics Interchange Format。-no-libtiff-qt-libtiff-system-libtifftiff是一种非常复杂的光栅图像格式,并且有直接现成的C语言实现库,因此选择参数时就有了qt和system,一般来说,科学相关的开发里可能会用到。-no-libpng-qt-libpng-system-libpngpng的相关参数,一种非失真性压缩位图图形文件格式,其实就是为了替代gif搞出来的,也是随实际需要来选择,当然,也有C语言实现的库。-no-libmng-qt-libmng-system-libmng大汗,大汗,这可是超级罕见的东西,QT竟然也能支持,说实话,这个参数我看来就是无视的。MNG是多帧PNG动画格式,结构极其复杂,基本没人用。-no-libjpeg-qt-libjpeg-system-libjpegjpeg,这么有名的图片格式也不用说了,随需要选择吧。-no-openssl-openssl-openssl-linkedSSL,Security Socket Layer,是一个安全传输协议,在Internet网上进行数据保护和身份确认,而OpenSSL是一个开放源代码的实现了SSL及相关加密技术的软件 包,在qt中,我们可以选择直接支持,或者OpenSSL链接支持,这个参数也是为有需要者提供的。以上是第三方库的参数选择,紧接着就是qt附加参数,在附加参数里,我们可以指定编译的部分及加入参数来获取信息。-make-nomake一 句话,说明,就说我可以这两个参数选择哪些我要编译,哪些我不需要,在 libs tools examples demos docs translations这些里你可以选择,比如examples,并不重要,可以放在-nomake后,这样编译过程中就不会编译这部分了。通过适当的 选择,我们可以大大加快编译的速度,这对配置较差的机子来说有着积极意义。-R <string>-l <string>这两个参数是为编译时增加一个库的运行路径及头文件的路径,比如使用tslib作为开发触摸驱动时,我们就应使用这两个参数来指定tslib的库路径和头文件路径。-no-rpath-rpath这个参数比较难于理解,简单地说,就是告诉动态加载器,到-rpath指定的目录中寻找编译时须要的动态链接库,语法就与上面的参数结合,比如 -rpath -R/home/xxxx。-continue这个参数的作用就是当出现错误时依然进行配置编译,换我是不会加上的。-verbose, -v这个参数就很眼熟,在前面的文章中有过详细介绍,简言之,就是显示配置的每一步的具体信息。-no-optimized-qmake-optimized-qmake是否编译生成优化过的qmake,没啥大用,也属于可有可无的参数。-no-nis-nis是否编译NIS支持,NIS(网络信息服务)是一个提供目录服务的RPC(远程过程调用)应用服务,当然没网络需要的可以再次华丽地无视。-no-cups-cups是 否编译CUPS支持,是不是想问什么用啊?~~~~囧,开打印店用的。好了,不说冷笑话,CUPS给Unix/Linux用户提供了一种可靠有效 的方法来管理打印。它支持IPP,并提供了LPD,SMB(服务消息块,如配置为微软WINDOWS的打印机)、JetDirect等接口。CUPS还可 以浏览网络打印机。它的开发提供者是大名鼎鼎的“水果生产商”—-苹果公司。-no-iconv-iconv选择是否编译iconv支持,iconv是一个计算机程序以及一套应用程序编程接口的名称。它的作用是在多种国际编码格式之间进行文本内码的转换。这对跨语言Qt开发人员来说是很有用的,当然,考虑到中文的编码,我也选择加入支持。-no-pch-pch是 否支持预编译过的头文件。预编译头就是把一个工程中的一部分代码,预先编译好放在一个文件里(通常以.pch为扩展名),这个文件就称为预编译头 文件。这些预先编译好的代码在工程开发的过程中不会被经常改变。如果这些代码被修改,则需要重新编译生成预编译头文件。妈妈经常说:不懂就要学。我说:不 懂就加上。。。no-dbus-dbus-dbus-linked是否编译编译QtDBus模块。dbus是freedesktop下开源的Linux IPC通信机制,本身Linux 的IPC通信机制包括,管道(fifo),共享内存,信号量,消息队列,Socket等。在Qt中DBUS是有单独的模块的,可见其重要性。 -rece-relocations 对于额外的库链接器优化,可以减少编译中的再定位。no-separate-debug-info-separate-debug-info是否存储debug信息在.debug,一般为了查错,还是选择存储吧。-xplatform target相当浅显的参数,即交叉编译的目标平台,一般来说根据你所要移植的目标板来确定。-no-feature-<feature>-feature-<feature>选 取qte的feature编译,对于这个,我理解为特性,特性的描述你可以参考src/corelib/global/qfeatures.txt,在这 里面对于每个特性都有比较充分的讲解。对于特性地选择,也是要根据开发需求进行,如果裁剪适当,能大大为qte库瘦身。-embedded <arch>嵌入式平台架构选择,可以选择arm,mips,x86及generic,视你的目标平台决定吧。-armfpa-no-armfpa这个参数也只是针对ARM平台的,是否加入对于基于ARM的浮点数格式的支持,通常,这个参数在编译时会自动选择。-little-endian-big-endian目标平台的大端和小端选择,这应该是常识了,如果这不知道,就不要来混嵌入式了-host-little-endian-host-big-endia主机平台的大端和小端选择,属于鸡肋的参数,不选择也会在配置时自动选择。-no-freetype-qt-freetype-system-freetype选择freetype,FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,在嵌入式开发中,有套可使用的字体对于中文开发至关重要,本人一般使用文泉驿字体。-qconfig local使用本地的qconfig配置文件来替代全部参数配置,有需要的可以去研究下,可以裁剪控件级别的参数。-depths <list>显示的像素位深,也是根据需要来进行吧。-qt-decoration-<style>-plugin-decoration-<style>-no-decoration-<style>这个是选择qt的样式风格,对于需要美化界面的项目来说,可以好好选择下。-no-opengl-opengl <api>是否加入opengl的支持,OpenGL是个专业的3D程序接口,是一个功能强大,调用方便的底层3D图形库。不过对于一般的开发来说,似乎有很少用到的地方。-qt-gfx-<driver>-plugin-gfx-<driver>-no-gfx-<driver>这个是相当重要的一个参数,选择QtGui的图形显示驱动,比如我们在pc上使用qvfb模拟时,就应该加入对qfvb的支持。我们可以在 linuxfb,transformed,qvfb,vnc,multiscreen这几个中选择。在平常的开发板上,选择linuxfb即可。-qt-kbd-<driver>-plugin-kbd-<driver>-no-kbd-<driver>选择键盘的驱动支持,可以支持usb键盘,串口键盘等等,也是在tty,usb ,sl5000, yopy, vr41xx ,qvfb中选择。qt-mouse-<driver>-plugin-mouse-<driver>-no-mouse-<driver>鼠标的驱动支持,一般都会选择tslib,可以完美地支持触摸屏,在pc,bus,linuxtp,yopy,vr41xx,tslib,qvfb中选择吧。-iwmmxt加入iWMMXt指令的编译,也只是部分XScale架构才具有。-no-glib-glib是否加入glib库的支持,glib库对应即gtk库,就也是说加入后可以使用gtk。
❷ eclipse开发qt怎么配置
1).设置eclipse通过菜单“Window” -> "Preferences…",进入参数设置框,在Qt里面添加刚才安装的位置和版本号2) 建立Qt工程“File” -> "New" -> "New Project"在Qt目录下面选择“Qt Gui Project”, "Next", 然后输入工程名字,剩下的只需要一路取默认值即可。3) 在窗体上添加按钮双击工程里面的ui文件,打开窗体编辑窗口.在菜单"Window" -> "Show View" -> "Other…"选择"Qt C++ Widget Box",点击"OK",就可以打开控件窗口了4) 在窗口上放置两个按钮,在按钮上右键修改objectName和text.两个的objectName分别是:"Button1","Button2:".text分别是:"Show Box", "Close"5) 添加按钮事件在"Qt C++ Signal Slot Editor"窗口里面,单击"+"图标,这时候再窗口里面出现一行内容.将双击"",选择“Button2”;双击“”,选择"clicked()";双击"",选择"close()".打开主窗口类头文件, 添加信号响应部分和函数:private slots:void on_Button1_clicked();这个函数的格式必须是:on_控件名_事件类型()在cpp文件里面,添加头文件及函数实体:#include …void qqq::on_Button1_clicked(){QMessageBox box(this);box.setText("Hello World!");box.exec();}6) 在Eclipse里面,编译运行程序即可。效果如下:5) 添加按钮事件在"Qt C++ Signal Slot Editor"窗口里面,单击"+"图标,这时候再窗口里面出现一行内容.将双击"",选择“Button2”;双击“”,选择"clicked()";双击"",选择"close()".打开主窗口类头文件, 添加信号响应部分和函数:private slots:void on_Button1_clicked();这个函数的格式必须是:on_控件名_事件类型()在cpp文件里面,添加头文件及函数实体:#include …void qqq::on_Button1_clicked(){QMessageBox box(this);box.setText("Hello World!");box.exec();}
❸ 为什么建QT工程时会提示“没有有效的QT版本”
这个是因为没有指定Qt SDK,你这个是在ubantu下的吧.你全盘搜索一下有没有qmake这个东西.然后在tool-option找到Qt Version(这个有可以根据版本不同会在不同的对话框中)点击add把qmake添加进去Qt Creator就可以了.在manual(人工)那一行.如果添加进去后没有行首没有红色的警告就说明添加成功可以使用了.如果全盘搜索没找到qmake那就是Qt SDK没装好了.只是装了个Qt Creator.那你就要上官网下个Qt SDK了.
❹ 怎么给qt程序添加版本信息
windows下的可执行文件的属性中有版本这个信息,她含有版本信息,描述,版权等等。对于qt的程序,要含有这样的信息,该怎么办呢?那就如下操作吧:新建***.rc文件,在rc文件填入下的信息#if defined(UNDER_CE)#include <winbase.h>#else#include <winver.h>#endifVS_VERSION_INFO VERSIONINFOFILEVERSION 1,0,0,0PRODUCTVERSION 1,0,0,0FILEFLAGSMASK 0x3fL#ifdef _DEBUGFILEFLAGS VS_FF_DEBUG#elseFILEFLAGS 0x0L#endifFILEOS VOS__WINDOWS32FILETYPE VFT_DLLFILESUBTYPE 0x0LBEGINBLOCK "StringFileInfo"BEGINBLOCK "040904B0"BEGINVALUE "CompanyName", "artphoto365.com\0"VALUE "FileDescription", "ArtPhoto365C线下软件\0"VALUE "FileVersion", "1.0.0.0\0"VALUE "LegalCopyright", "(C) 2010-2011 artphoto365.com\0"VALUE "OriginalFilename", "ArtPhoto365C.exe\0"VALUE "ProctName", "ArtPhoto365C线下软件\0"ENDENDEND然后记住将pro文件的OTHER_FILES += resource.rc改成RC_FILE = resource.rc,要不编译生成的程序不含有版本信息。
❺ mac怎么给qt程序添加版本信息
你先要在设置,安全与隐私选项里选择允许任何外来软件安装,然后在网络上搜索qt语音mac版本下载下来就可以了
❻ qt creator添加大括号辅助线
建议添加美化插件。先根据qtcreator版本指定安装相匹配和兼容的艺术或美化插件,然后解压包装,并编辑文件ArtisticStyle.pluginspec。将依赖关系版本描述编辑到您计算机上已安装的版本中。在终端上(Ctrl+Alt+T),发送qtcreator-version获取Qt'依赖版本信息,就可以使用了。包括大括号或辅助线之类的工具都可以在艺术或美化插件工具中找到并应用。
❼ Qt5如何安装与使用
1、安装Qt5Qt5的安装比Qt4的安装简单多了,我装的是Qt5.4(qt-opensource-windows-x86-mingw491_opengl-5.4.0.exe),它集成了MinGW、Qt Creator等,不需要你再单独下载MinGW和Qt Creator。首先,去Qt官网下载资源:qt-opensource-windows-x86-mingw491_opengl-5.4.0.exe;然后,双击安装即可。安装后,“开始”菜单 2、配置Qt打开Qt Creator,工具–>选项,打开“选项”对话框若没有检测出,则添加相应的Qt版本和编译器(MinGW),再设置构建套件(Kits):设备类型、编译器(MinGW)、调试器、Qt版本3、使用Qt打开Qt Creator,新建项目–>其他项目–>空的qmake项目,项目命名为“QtTest”,再添加新文件main.cpp。在main.cpp中添加如下代码:#include<QApplication>#include<QVBoxLayout>#include<QLabel>#include<QPushButton>int main(int argc,char *argv[]){ QApplication app(argc,argv); QWidget *window = new QWidget; window->setWindowTitle("QtTest"); //QLabel *label= new QLabel("Hello Qt"); QLabel *label = new QLabel("<h2><i>Hello</i>"" <font color = red>Qt</font><h2>"); QPushButton *button=new QPushButton("Quit"); QObject::connect(button,SIGNAL(clicked()),&app,SLOT(quit())); QVBoxLayout *layout=new QVBoxLayout; layout->addWidget(label); layout->addWidget(button); window->setLayout(layout); window->show(); return app.exec();}此时,代码显示如下错误:运行时错误提示:#include<QApplication>–No such file……实际上,QT5中很多常用的QT头文件都被移到core gui widgets 等模块中去了,在QT5中,.pro文件需要增加额外的一行(注意大小写):QT += core gui widgets其中Qt += core gui widgets 表示链接QtCore(d).dll、QtGui(d).dll、QtWidgets(d).dll。我们在.pro文件中增加一行上述代码,保存,再双击打开.cpp文件,此时错误提示线消失,运行,结果
❽ 如何用qt-4.8.5源代码配置arm版本qt
下面是编译选项,自己可以修修改改./configure -opensource -embedded arm -xplatform qws/linux-arm-gnueabi-g++ -no-webkit -qt-libtiff -qt-libmng -qt-libjpeg -qt-libpng -no-qt3support -nomake demos -nomake docs -nomake examples -little-endian -host-little-endian -no-xcursor -no-mouse-linuxtp -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib -fast -lrt -confirm-licensePS:在解压包的 mkspecs/linux-arm-gnueabi-g++ 目录下需要配置一下你的 linux-arm-gnueabi-g++ 路径,最好是设置成绝对路径,否则可能你配置的交叉编译器没有添加到环境变量里面不好~ (如果配置了环境变量的话,那就没必要设置了)我的给你参考一下,就是原配了~## qmake configuration for building with arm-linux-gnueabi-g++#MAKEFILE_GENERATOR = UNIXTARGET_PLATFORM = unixTEMPLATE = appCONFIG += qt warn_on release incremental link_prl gdb_dwarf_indexQT += core guiQMAKE_INCREMENTAL_STYLE = sublibinclude(../common/linux.conf)include(../common/gcc-base-unix.conf)include(../common/g++-unix.conf)# modifications to g++.confQMAKE_CC = arm-linux-gnueabi-gccQMAKE_CXX = arm-linux-gnueabi-g++QMAKE_LINK = arm-linux-gnueabi-g++QMAKE_LINK_SHLIB = arm-linux-gnueabi-g++# modifications to linux.confQMAKE_AR = arm-linux-gnueabi-ar cqsQMAKE_OBJCOPY = arm-linux-gnueabi-objQMAKE_STRIP = arm-linux-gnueabi-stripload(qt_config)接下来是QT CREATE配置工具–>选项—>构建和运行1. 编译器: 点击添加: "名称"随意 "编译器路径" **/arm-none-linux-gnueabi-g++ 找到你的编译器,我这里是用ARM的 其他不填也行.2.Qt Versions: 点击添加:找到通过源码编译好的qmake文件. 例如:/usr/local/Qt-4.8.6/bin/qmake3.构建套件: 点击添加: "名称"随意, 重点是 "编译器"跟"QT版本", 分别选择刚刚添加的两项. 调试器:如果是桌面环境那就选桌面的, 如果是在嵌入式中的,那不要也可以..
❾ 用qt creator创建工程时提示没有有效的qt版本怎么办
单击“项目”,在“Qt 版本:”选项中选择“Qt 4.7.4 for …”(根据你的版本来选一项) ,重新编译即可。