QT编译参数说明

为了与时俱进,本人的例子都是参照qt-embedded-linux-opensource-src-4.5.x系列。 

当进入解压好的源码包后,使用./configure –help命令,可以获得相应帮助,那我们只要选取参数部分看看就OK 

Configure options: 

The defaults (*) are usually acceptable. A plus (+) denotes a default value 
that needs to be evaluated. If the evaluation succeeds, the feature is 
included. Here is a short explanation of each option: 

*  -release ……….. Compile and link Qt with debugging turned off. 
-debug …………. Compile and link Qt with debugging turned on. 
-debug-and-release . Compile and link two versions of Qt, with and without 
debugging turned on (Mac only). 

-developer-build…. Compile and link Qt with Qt developer options (including auto-tests exporting) 

-opensource……… Compile and link the Open-Source Edition of Qt. 
-commercial……… Compile and link the Commercial Edition of Qt. 

*  -shared ………… Create and use shared Qt libraries. 
-static ………… Create and use static Qt libraries. 

*  -no-fast ……….. Configure Qt normally by generating Makefiles for all 
project files. 
-fast ………….. Configure Qt quickly by generating Makefiles only for 
library and subdirectory targets.  All other Makefiles 
are created as wrappers, which will in turn run qmake. 

-no-largefile …… Disables large file support. 
+  -largefile ……… Enables Qt to access files larger than 4 GB. 

*  -no-exceptions ….. Disable exceptions on compilers that support it. 
-exceptions …….. Enable exceptions on compilers that support it. 

-no-accessibility .. Do not compile Accessibility support. 
*  -accessibility ….. Compile Accessibility support. 

-no-stl ………… Do not compile STL support. 
*  -stl …………… Compile STL support. 

-no-sql-<driver> … Disable SQL <driver> entirely. 
-qt-sql-<driver> … Enable a SQL <driver> in the QtSql library, by default 
none are turned on. 
-plugin-sql-<driver> Enable SQL <driver> as a plugin to be linked to 
at run time. 

Possible values for <driver>: 
[  db2 ibase mysql oci odbc psql sqlite sqlite2 tds ] 

-system-sqlite ….. Use sqlite from the operating system. 

-no-qt3support ….. Disables the Qt 3 support functionality. 
*  -qt3support …….. Enables the Qt 3 support functionality. 

-no-xmlpatterns …. Do not build the QtXmlPatterns module. 
+  -xmlpatterns ……. Build the QtXmlPatterns module. 
QtXmlPatterns is built if a decent C++ compiler 
is used and exceptions are enabled. 

-no-phonon ……… Do not build the Phonon module. 
+  -phonon ………… Build the Phonon module. 
Phonon is built if a decent C++ compiler is used. 
-no-phonon-backend.. Do not build the platform phonon plugin. 
+  -phonon-backend….. Build the platform phonon plugin. 

-no-svg ………… Do not build the SVG module. 
+  -svg …………… Build the SVG module. 

-no-webkit ……… Do not build the WebKit module. 
+  -webkit ………… Build the WebKit module. 
WebKit is built if a decent C++ compiler is used. 

-no-scripttools …. Do not build the QtScriptTools module. 
+  -scripttools ……. Build the QtScriptTools module. 

-platform target … The operating system and compiler you are building 
on (qws/linux-x86-g++). 

See the README file for a list of supported 
operating systems and compilers. 

-no-mmx ………… Do not compile with use of MMX instructions. 
-no-3dnow ………. Do not compile with use of 3DNOW instructions. 
-no-sse ………… Do not compile with use of SSE instructions. 
-no-sse2 ……….. Do not compile with use of SSE2 instructions. 

-qtnamespace <name>  Wraps all Qt library code in ‘namespace <name> {…}’. 
-qtlibinfix <infix>  Renames all libQt*.so to libQt*<infix>.so. 

-D <string> …….. Add an explicit define to the preprocessor. 
-I <string> …….. Add an explicit include path. 
-L <string> …….. Add an explicit library path. 

-help, -h ………. Display this information. 

Third Party Libraries: 

-qt-zlib ……….. Use the zlib bundled with Qt. 
+  -system-zlib ……. Use zlib from the operating system. 
See http://www.gzip.org/zlib 

-no-gif ………… Do not compile the plugin for GIF reading support. 
*  -qt-gif ………… Compile the plugin for GIF reading support. 
See also src/plugins/imageformats/gif/qgifhandler.h 

-no-libtiff …….. Do not compile the plugin for TIFF support. 
-qt-libtiff …….. Use the libtiff bundled with Qt. 
+  -system-libtiff …. Use libtiff from the operating system. 
See http://www.libtiff.org 

-no-libpng ……… Do not compile in PNG support. 
-qt-libpng ……… Use the libpng bundled with Qt. 
+  -system-libpng ….. Use libpng from the operating system. 
See http://www.libpng.org/pub/png 

-no-libmng ……… Do not compile the plugin for MNG support. 
-qt-libmng ……… Use the libmng bundled with Qt. 
+  -system-libmng ….. Use libmng from the operating system. 
See http://www.libmng.com 

-no-libjpeg …….. Do not compile the plugin for JPEG support. 
-qt-libjpeg …….. Use the libjpeg bundled with Qt. 
+  -system-libjpeg …. Use libjpeg from the operating system. 
See http://www.ijg.org 

-no-openssl …….. Do not compile support for OpenSSL. 
+  -openssl ……….. Enable run-time OpenSSL support. 
-openssl-linked …. Enabled linked OpenSSL support. 

-ptmalloc ………. Override the system memory allocator with ptmalloc. 
(Experimental.) 

Additional options: 

-make <part> ……. Add part to the list of parts to be built at make time. 
(libs tools examples demos docs translations) 
-nomake <part> ….. Exclude part from the list of parts to be built. 

-R <string> …….. Add an explicit runtime library path to the Qt 
libraries. 
-l <string> …….. Add an explicit library. 

-no-rpath ………. Do not use the library install path as a runtime 
library path. 
+  -rpath …………. Link Qt libraries and executables using the library 
install path as a runtime library path. Equivalent 
to -R install_libpath 

-continue ………. Continue as far as possible if an error occurs. 

-verbose, -v ……. Print verbose information about each step of the 
configure process. 

-silent ………… Reduce the build output so that warnings and errors 
can be seen more easily. 

*  -no-optimized-qmake … Do not build qmake optimized. 
-optimized-qmake …… Build qmake optimized. 

-no-nis ………… Do not compile NIS support. 
*  -nis …………… Compile NIS support. 

-no-cups ……….. Do not compile CUPS support. 
*  -cups ………….. Compile CUPS support. 
Requires cups/cups.h and libcups.so.2. 

-no-iconv ………. Do not compile support for iconv(3). 
*  -iconv …………. Compile support for iconv(3). 

-no-pch ………… Do not use precompiled header support. 
*  -pch …………… Use precompiled header support. 

-no-dbus ……….. Do not compile the QtDBus module. 
+  -dbus ………….. Compile the QtDBus module and dynamically load libdbus-1. 
-dbus-linked ……. Compile the QtDBus module and link to libdbus-1. 

-reduce-relocations ….. Reduce relocations in the libraries through extra 
linker optimizations (Qt/X11 and Qt for Embedded Linux only; 
experimental; needs GNU ld >= 2.18). 

-no-separate-debug-info . Do not store debug information in a separate file. 
*  -separate-debug-info …. Strip debug information into a separate .debug file. 

Qt for Embedded Linux only: 

-xplatform target … The target platform when cross-compiling. 

-no-feature-<feature> Do not compile in <feature>. 
-feature-<feature> .. Compile in <feature>. The available features 
are described in src/corelib/global/qfeatures.txt 

-embedded <arch> …. This will enable the embedded build, you must have a 
proper license for this switch to work. 
Example values for <arch>: arm mips x86 generic 

-armfpa …………. Target platform is uses the ARM-FPA floating point format. 
-no-armfpa ………. Target platform does not use the ARM-FPA floating point format. 

The floating point format is usually autodetected by configure. Use this 
to override the detected value. 

-little-endian …… Target platform is little endian (LSB first). 
-big-endian ……… Target platform is big endian (MSB first). 

-host-little-endian . Host platform is little endian (LSB first). 
-host-big-endian …. Host platform is big endian (MSB first). 

You only need to specify the endianness when 
cross-compiling, otherwise the host 
endianness will be used. 

-no-freetype …….. Do not compile in Freetype2 support. 
-qt-freetype …….. Use the libfreetype bundled with Qt. 
*  -system-freetype …. Use libfreetype from the operating system. 
See http://www.freetype.org/ 

-qconfig local …… Use src/corelib/global/qconfig-local.h rather than the 
default (full). 

-depths <list> …… Comma-separated list of supported bit-per-pixel 
depths, from: 1, 4, 8, 12, 15, 16, 18, 24, 32 and ‘all’. 

-qt-decoration-<style> ….Enable a decoration <style> in the QtGui library, 
by default all available decorations are on. 
Possible values for <style>: [ styled windows default ] 
-plugin-decoration-<style> Enable decoration <style> as a plugin to be 
linked to at run time. 
Possible values for <style>: [  default styled windows ] 
-no-decoration-<style> ….Disable decoration <style> entirely. 
Possible values for <style>: [ styled windows default ] 

-no-opengl ………. Do not support OpenGL. 
-opengl <api> ……. Enable OpenGL ES support 
With no parameter, this will attempt to auto-detect OpenGL ES 1.x 
or 2.x. Use es1, es1cl or es2 for <api> to override auto-detection. 

NOTE: A QGLScreen driver for the hardware is required to support 
OpenGL ES on Qt for Embedded Linux. 

-qt-gfx-<driver> … Enable a graphics <driver> in the QtGui library. 
Possible values for <driver>: [ linuxfb transformed qvfb vnc multiscreen ] 
-plugin-gfx-<driver> Enable graphics <driver> as a plugin to be 
linked to at run time. 
Possible values for <driver>: [  ahi directfb hybrid linuxfb powervr qvfb transformed vnc ] 
-no-gfx-<driver> … Disable graphics <driver> entirely. 
Possible values for <driver>: [ linuxfb transformed qvfb vnc multiscreen ] 

-qt-kbd-<driver> … Enable a keyboard <driver> in the QtGui library. 
Possible values for <driver>: [ tty usb sl5000 yopy vr41xx qvfb ] 

-plugin-kbd-<driver> Enable keyboard <driver> as a plugin to be linked to 
at runtime. 
Possible values for <driver>: [  linuxis sl5000 usb vr41xx yopy ] 

-no-kbd-<driver> … Disable keyboard <driver> entirely. 
Possible values for <driver>: [ tty usb sl5000 yopy vr41xx qvfb ] 

-qt-mouse-<driver> … Enable a mouse <driver> in the QtGui library. 
Possible values for <driver>: [ pc bus linuxtp yopy vr41xx tslib qvfb ] 
-plugin-mouse-<driver> Enable mouse <driver> as a plugin to be linked to 
at runtime. 
Possible values for <driver>: [  bus linuxis linuxtp pc tslib vr41xx yopy ] 
-no-mouse-<driver> … Disable mouse <driver> entirely. 
Possible values for <driver>: [ pc bus linuxtp yopy vr41xx tslib qvfb ] 

-iwmmxt ………… Compile using the iWMMXt instruction set 
(available on some XScale CPUs). 

-no-glib ……….. Do not compile Glib support. 
+  -glib ………….. Compile Glib support. 

这么参数,看得头晕了,但是其实仔细分析下,就会发现这些参数大多数是不难的,意思是非常好了解。本人移植qte时,就是一个一个参数配置过来的,当然,有些是可以无视的。接下来,就容本菜菜为您一一解释。 

我们可以发现,有的参数前面有*号,这就意味这如果我们什么也不做,直接配置编译的话,就会把这些参数默认进去。不过,如果什么也不做,那裁剪也无从说起了。为了便于分析,接下来,我就是以如下格式进行: 

参数 
解释。 

-release 
这个参数显而易见,就是编译Qt以发布版的模式进行,一般来说,最后系统完成后,库就应该是发布版。 

-debug 
与上面对应,自然是调试版了,如果开发的话,可以选择它吧。 

-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-sqlite 
sqlite真受欢迎啊,当然那么优秀的嵌入式数据库,本人也是基本使用它来进行开发。这个参数意思是使用操作系统上的sqlite数据库,如果是不太会移植的,可以考虑直接使用qt自带的驱动。 

-no-qt3support 
-qt3support 
这个也是简洁易懂,加不加对qt3的支持。 

no-xmlpatterns 
-xmlpatterns 
选择对xml的支持,如果对网络无需求的话,就不用加了。 

-no-phonon 
-phonon 
phonon是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库重命名,也没啥大用处。 

好了,以上就是qt最基本的参数,接下来静待下篇吧囧。 

Tags: configure, QtEmbedded 
如果是-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-libtiff 

tiff是一种非常复杂的光栅图像格式,并且有直接现成的C语言实现库,因此选择参数时就有了qt和system,一般来说,科学相关的开发里可能会用到。 

-no-libpng 
-qt-libpng 
-system-libpng 

png的相关参数,一种非失真性压缩位图图形文件格式,其实就是为了替代gif搞出来的,也是随实际需要来选择,当然,也有C语言实现的库。 

-no-libmng 
-qt-libmng 
-system-libmng 
大汗,大汗,这可是超级罕见的东西,QT竟然也能支持,说实话,这个参数我看来就是无视的。MNG是多帧PNG动画格式,结构极其复杂,基本没人用。 

-no-libjpeg 
-qt-libjpeg 
-system-libjpeg 

jpeg,这么有名的图片格式也不用说了,随需要选择吧。 

-no-openssl 
-openssl 
-openssl-linked 

SSL,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是有单独的模块的,可见其重要性。 

-reduce-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。
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值