Qt特征定义文件(裁剪定制Qt库)

本文介绍了如何通过修改Qt源码目录下的qconfig.h文件来裁剪定制Qt库,实现去除不需要的功能以减小库体积的方法。特别适用于嵌入式系统的Qt/Embedded平台。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Qt特征定义文件(裁剪定制Qt库) 
 
 
Qt源码目录下 src/tools/qfeatures.h文件包含了  src/tools/qconfig.h ,因此修改 qconfig.h,就可以编译自己想要的  特征  ,即qt所有功能的一个子集。

需要注意的是这样的修改只有Qt/Embedded平台能支持,因为嵌入式环境中,减小qt库的大小很重要,并且应用配置常常是固定的。

config.h文件定义的是需要去除的 特征 。有些 特征 依赖于其他的特征,这些依赖关系在 qfeatures.h可以看到。

可选项如下:

MacroDisablesSet automatically by
Images (QImageIO )
QT_NO_IMAGEIO_BMPThe Microsoft Bitmap image file format. 
QT_NO_IMAGEIO_PPMThe Portable Pixmap image file format. 
QT_NO_IMAGEIO_XBMThe X11 Bitmap image file format. 
QT_NO_IMAGEIO_XPMThe X11 Pixmap image file format. 
QT_NO_IMAGEIO_PNGThe Portable Network Graphics image file format. 
Animation
QT_NO_ASYNC_IOAsynchronous I/O (QAsyncIO ) 
QT_NO_ASYNC_IMAGE_IOAsynchronous Image I/O and GIF image support (QImageDecoder , ...) 
QT_NO_MOVIEAnimation support (QMovie )QT_NO_ASYNC_IO, QT_NO_ASYNC_IMAGE_IO
Fonts
QT_NO_TRUETYPETrueType (TTF and TTC) font file format, only used by Qt/Embedded. 
QT_NO_BDFBitmap Distribution Format (BDF) font file format, only used by Qt/Embedded. 
QT_NO_FONTDATABASEFont database. 
Internationalization
QT_NO_I18NConversions between Unicode and 8-bit encodings. 
QT_NO_UNICODETABLESLarge tables defining such things as upper and lowercase conversions for all Unicode characters. 
MIME
QT_NO_MIMEMultipurpose Internet Mail Extensions, an internet standard for encoding and tagging typed data (eg. text, images, colors) (QMimeSource ) 
QT_NO_RICHTEXTHTML-like text (QStyleSheet , QLabel )QT_NO_MIME
QT_NO_DRAGANDDROPDrag-and-drop data between applications (QDragObject )QT_NO_MIME
QT_NO_CLIPBOARDCut-and-paste data between applications (QClipboard )QT_NO_MIME
Sound
QT_NO_SOUNDPlaying audio files (QSound ) 
Scipting
QT_NO_PROPERTIESScripting of Qt-based applications. 
Qt/Embedded-specific
QT_NO_QWS_CURSORThe cursor sprite on Qt/Embedded. Pen-operated devices would not normally need this feature. 
QT_NO_QWS_DEPTH_8GRAYSCALE8 bits per pixel: 256 levels of gray. Incompatible with QWS_DEPTH_8. 
QT_NO_QWS_DEPTH_88 bits per pixel: 216-color cube with 40 auxiliary colors. Incompatible with QWS_DEPTH_8GRAYSCALE. 
QT_NO_QWS_DEPTH_1515 bits per pixel: 32 levels for each of red, green and blue. 
QT_NO_QWS_DEPTH_1616 bits per pixel: 64 levels of green, 32 levels for red and for blue. 
QT_NO_QWS_DEPTH_3232 bits per pixel: 256 levels for each of red, green and blue. 
QT_NO_QWS_MACH64Mach64 accelerated driver (demonstration only). 
QT_NO_QWS_VFBVirtual framebuffer running on X11 (see reference documentation). 
Networking
QT_NO_NETWORKPROTOCOLAbstract multi-protocol data retrieval, with local file retrieval included (QNetworkProtocol ) 
QT_NO_NETWORKPROTOCOL_FTPFTP-protocol data retrieval.QT_NO_NETWORKPROTOCOL
QT_NO_NETWORKPROTOCOL_HTTPHTTP-protocol data retrieval.QT_NO_NETWORKPROTOCOL
Painting/drawing
QT_NO_COLORNAMESColor names such as "red", used by some QColor constructors and by some HTML documents (QColor , QStyleSheet ) 
QT_NO_TRANSFORMATIONSUsed by a number of classes in Qt. With this, rotation and scaling are possible. Without it, only co-ordinate translation (QWMatrix ) 
QT_NO_PSPRINTERPostScript printer support. 
QT_NO_PRINTERPrinter support (QPrinter )QT_NO_PSPRINTER (Unix only)
QT_NO_PICTURESave Qt drawing commands to a files (QPicture ) 
Widgets
QT_NO_WIDGETSDisabling this disables all widgets except QWidget . 
QT_NO_TEXTVIEWHTML document viewing (QTextView )QT_NO_WIDGETS, QT_NO_RICHTEXT
QT_NO_TEXTBROWSERHTML document browsing (QTextBrowser )QT_NO_TEXTVIEW
QT_NO_ICONVIEWLabelled icons (QIconView )QT_NO_WIDGETS, QT_NO_DRAGANDDROP
QT_NO_LISTVIEWLists of information (QListView )QT_NO_WIDGETS
QT_NO_CANVASObject canvas (QCanvas )QT_NO_WIDGETS
QT_NO_DIALValue control (QDial )QT_NO_WIDGETS
QT_NO_WORKSPACEMulti-document interface (QWorkspace )QT_NO_WIDGETS
QT_NO_LCDNUMBERLCD-like number display (QLCDNumber )QT_NO_WIDGETS
GUI Styles
QT_NO_STYLE_WINDOWSMicrosoft Windows style (QWindowsStyle )QT_NO_WIDGETS
QT_NO_STYLE_MOTIFOSF Motif style (QMotifStyle )QT_NO_WIDGETS
QT_NO_STYLE_CDEOpen Group CDE style (QCDEStyle )QT_NO_STYLE_MOTIF
QT_NO_STYLE_AQUAMacOS X style (QAquaStyle)
QT_NO_STYLE_PLATINUMMacOS 9 style (QPlatinumStyle )QT_NO_WIDGETS
QT_NO_STYLE_SGISGI style (QSGIStyle )QT_NO_STYLE_MOTIF
Dialogs
QT_NO_DIALOGSDisabling this disables all common dialogs QWidget .QT_NO_WIDGETS
QT_NO_FILEDIALOGThe file selection dialog (QFileDialog )QT_NO_DIALOGS, QT_NO_NETWORKPROTOCOL, QT_NO_LISTVIEW
QT_NO_FONTDIALOGThe font selection dialog (QFontDialog )QT_NO_DIALOGS, QT_NO_FONTDATABASE
QT_NO_COLORDIALOGThe color selection dialog (QColorDialog )QT_NO_DIALOGS
QT_NO_INPUTDIALOGText input dialog (QInputDialog )QT_NO_DIALOGS
QT_NO_MESSAGEBOXMessage/prompting dialog (QMessageBox )QT_NO_DIALOGS
QT_NO_PROGRESSDIALOGLong-computation progress dialog (QProgressDialog )QT_NO_DIALOGS
QT_NO_TABDIALOGTabbed-pages dialog (QTabDialog )QT_NO_DIALOGS
QT_NO_WIZARDMulti-step dialog (QWizard )QT_NO_DIALOGS

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值