wwwcat 发表于 2003-11-21 09:07:41

如何编译可以使QT库小

请问如何编译可以使QT的库小些(2M左右)
谢谢

wwwcat 发表于 2003-11-21 10:23:33

我使用configure -qconfig small
然后使用命令make
编译一会后提示

g++-c -I/usr/X11R6/include -I/usr/local/src/qt-2.3.2/include -I/usr/X11R6/include -pipe -O2 -Wall -W -fPIC -DQT_BUILTIN_GIF_READER=0 -DQT_NO_IMAGEIO_JPEG -DQT_NO_IMAGEIO_MNG -DQT_XFT-I/usr/local/src/qt-2.3.2/src/3rdparty/zlib -I/usr/local/src/qt-2.3.2/src/3rdparty/libpng-o kernel/qapplication_x11.o kernel/qapplication_x11.cpp
In file included from kernel/qt_x11.h:76,
               from kernel/qapplication_x11.cpp:141:
/usr/X11R6/include/X11/Xft/Xft.h:35:31: freetype/freetype.h: 没有那个文件或目录
In file included from kernel/qt_x11.h:76,
               from kernel/qapplication_x11.cpp:141:
/usr/X11R6/include/X11/Xft/Xft.h:52: syntax error before `;' token
/usr/X11R6/include/X11/Xft/Xft.h:86: 'FT_UInt' is used as a type, but is not
   defined as a type.
/usr/X11R6/include/X11/Xft/Xft.h:93: 'FT_UInt' is used as a type, but is not
   defined as a type.
/usr/X11R6/include/X11/Xft/Xft.h:190: parse error before `*' token
/usr/X11R6/include/X11/Xft/Xft.h:295: parse error before `*' token
/usr/X11R6/include/X11/Xft/Xft.h:354: parse error before `*' token
/usr/X11R6/include/X11/Xft/Xft.h:393: parse error before `*' token
/usr/X11R6/include/X11/Xft/Xft.h:399: parse error before `*' token
/usr/X11R6/include/X11/Xft/Xft.h:408: type specifier omitted for parameter `
   FT_UInt'
/usr/X11R6/include/X11/Xft/Xft.h:408: parse error before `,' token
/usr/X11R6/include/X11/Xft/Xft.h:418: parse error before `*' token
/usr/X11R6/include/X11/Xft/Xft.h:461: parse error before `*' token
kernel/qapplication_x11.cpp: In function `bool qt_set_desktop_properties()':
kernel/qapplication_x11.cpp:756: variable `QDataStream d' has initializer but
   incomplete type
kernel/qapplication_x11.cpp: In function `void qt_set_input_encoding()':
kernel/qapplication_x11.cpp:813: no method `QTextCodec::codecForLocale'
kernel/qapplication_x11.cpp:817: no method `QTextCodec::codecForLocale'
kernel/qapplication_x11.cpp:819: no method `QTextCodec::codecForName'
kernel/qapplication_x11.cpp:822: no method `QTextCodec::codecForName'
kernel/qapplication_x11.cpp:824: invalid use of undefined type `struct
   QTextCodec'
kernel/qfontmetrics.h:46: forward declaration of `struct QTextCodec'
kernel/qapplication_x11.cpp:825: no method `QTextCodec::codecForName'
kernel/qapplication_x11.cpp: In function `void qt_set_x11_resources(const
   char*, const char*, const char*, const char*)':
kernel/qapplication_x11.cpp:985: variable `QStringList effects' has initializer
   but incomplete type
kernel/qapplication_x11.cpp:985: no method `QStringList::split'
kernel/qapplication_x11.cpp: In member function `virtual int
   QApplication::x11ClientMessage(QWidget*, XEvent*, bool)':
kernel/qapplication_x11.cpp:2761: `QWhatsThis' undeclared (first use this
   function)
kernel/qapplication_x11.cpp:2761: (Each undeclared identifier is reported only
   once for each function it appears in.)
kernel/qapplication_x11.cpp:2761: parse error before `::' token
kernel/qapplication_x11.cpp: In member function `int
   QApplication::x11ProcessEvent(XEvent*)':
kernel/qapplication_x11.cpp:2880: invalid use of undefined type `struct
   QClipboard'
kernel/qwindowdefs.h:83: forward declaration of `struct QClipboard'
kernel/qapplication_x11.cpp:2882: invalid use of undefined type `struct
   QClipboard'
kernel/qwindowdefs.h:83: forward declaration of `struct QClipboard'
kernel/qapplication_x11.cpp: In member function `bool
   QETWidget::translateKeyEventInternal(const XEvent*, int&, QString&, int&,
   char&, int&)':
kernel/qapplication_x11.cpp:4453: no method `QTextCodec::codecForMib'
kernel/qapplication_x11.cpp:4488: invalid use of undefined type `struct
   QTextCodec'
kernel/qfontmetrics.h:46: forward declaration of `struct QTextCodec'
kernel/qapplication_x11.cpp:4561: invalid use of undefined type `struct
   QTextCodec'
kernel/qfontmetrics.h:46: forward declaration of `struct QTextCodec'
kernel/qapplication_x11.cpp: In function `void sm_setProperty(const QString&,
   const QStringList&)':
kernel/qapplication_x11.cpp:5358: invalid use of undefined type `struct
   QStringList'
kernel/qfont.h:47: forward declaration of `struct QStringList'
kernel/qapplication_x11.cpp:5360: incomplete type `QStringList' does not have
   member `ConstIterator'
kernel/qapplication_x11.cpp:5360: parse error before `=' token
kernel/qapplication_x11.cpp:5360: `it' undeclared (first use this function)
kernel/qapplication_x11.cpp:5360: invalid use of undefined type `struct
   QStringList'
kernel/qfont.h:47: forward declaration of `struct QStringList'
kernel/qapplication_x11.cpp: In function `void
   sm_performSaveYourself(QSessionManager*)':
kernel/qapplication_x11.cpp:5411: aggregate `QStringList restart' has
   incomplete type and cannot be defined
kernel/qapplication_x11.cpp:5412: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp:5414: aggregate `QStringList discard' has
   incomplete type and cannot be defined
kernel/qapplication_x11.cpp:5419: no matching function for call to `
   QApplication::commitData(QSessionManager&)'
kernel/qapplication_x11.cpp:5424: no matching function for call to `
   QApplication::saveState(QSessionManager&)'
kernel/qapplication_x11.cpp:5427: no matching function for call to `
   QApplication::commitData(QSessionManager&)'
kernel/qapplication_x11.cpp:5446: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp:5453: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp:5454: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp:5459: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp: At global scope:
kernel/qapplication_x11.cpp:5519: field `restartCommand' has incomplete type
kernel/qapplication_x11.cpp:5520: field `discardCommand' has incomplete type
kernel/qapplication_x11.cpp:5522: syntax error before `;' token
kernel/qapplication_x11.cpp:5517: destructor `QSessionManagerData' must match
   class name `QSessionManager'
kernel/qapplication_x11.cpp:5517: ISO C++ forbids declaration of `
   QSessionManagerData' with no type
kernel/qapplication_x11.cpp:5517: ISO C++ forbids declaration of `
   QSessionManagerData' with no type
kernel/qapplication_x11.cpp:5526: cannot declare member function `
   QSessionManager::QSessionManager' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5526: syntax error before `:' token
kernel/qapplication_x11.cpp:5529: syntax error before `->' token
kernel/qapplication_x11.cpp:5530: syntax error before `->' token
kernel/qapplication_x11.cpp:5532: ISO C++ forbids declaration of `resetSmState'
   with no type
kernel/qapplication_x11.cpp:5532: new declaration `int resetSmState()'
kernel/qapplication_x11.cpp:5307: ambiguates old declaration `void
   resetSmState()'
kernel/qapplication_x11.cpp:5535: `session' was not declared in this scope
kernel/qapplication_x11.cpp:5538: syntax error before `.' token
kernel/qapplication_x11.cpp:5539: syntax error before `.' token
kernel/qapplication_x11.cpp:5540: syntax error before `.' token
kernel/qapplication_x11.cpp:5541: syntax error before `.' token
kernel/qapplication_x11.cpp:5542: syntax error before `.' token
kernel/qapplication_x11.cpp:5543: syntax error before `.' token
kernel/qapplication_x11.cpp:5544: syntax error before `.' token
kernel/qapplication_x11.cpp:5545: syntax error before `.' token
kernel/qapplication_x11.cpp:5550: parse error before `if'
kernel/qapplication_x11.cpp:5553: ISO C++ forbids declaration of `smcConnection
   ' with no type
kernel/qapplication_x11.cpp:5553: conflicting types for `int smcConnection'
kernel/qapplication_x11.cpp:5275: previous declaration as `
   _SmcConn*smcConnection'
kernel/qapplication_x11.cpp:5562: invalid conversion from `_SmcConn*' to `int'
kernel/qapplication_x11.cpp:5564: syntax error before `->' token
kernel/qapplication_x11.cpp:5565: ISO C++ forbids declaration of `free' with no
   type
kernel/qapplication_x11.cpp:5565: `int free' redeclared as different kind of
   symbol
/usr/include/stdlib.h:569: previous declaration of `void free(void*)'
kernel/qapplication_x11.cpp:5565: invalid conversion from `char*' to `int'
kernel/qapplication_x11.cpp:5566: ISO C++ forbids declaration of `session' with
   no type
kernel/qapplication_x11.cpp:5566: `d' was not declared in this scope
kernel/qapplication_x11.cpp:5569: parse error before `if'
kernel/qapplication_x11.cpp:5578: cannot declare member function `
   QSessionManager::QSessionManager' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5578: syntax error before `{' token
kernel/qapplication_x11.cpp:5581: ISO C++ forbids declaration of `smcConnection
   ' with no type
kernel/qapplication_x11.cpp:5581: redefinition of `int smcConnection'
kernel/qapplication_x11.cpp:5553: `int smcConnection' previously defined here
kernel/qapplication_x11.cpp:5582: parse error before `delete'
kernel/qapplication_x11.cpp:5587: cannot declare member function `
   QSessionManager::sessionId' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5587: syntax error before `{' token
kernel/qapplication_x11.cpp:5592: cannot declare member function `
   QSessionManager::handle' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5592: syntax error before `{' token
kernel/qapplication_x11.cpp:5598: cannot declare member function `
   QSessionManager::allowsInteraction' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5598: syntax error before `{' token
kernel/qapplication_x11.cpp:5611: ISO C++ forbids declaration of `
   sm_waitingForInteraction' with no type
kernel/qapplication_x11.cpp:5611: conflicting types for `int
   sm_waitingForInteraction'
kernel/qapplication_x11.cpp:5284: previous declaration as `bool
   sm_waitingForInteraction'
kernel/qapplication_x11.cpp:5612: parse error before `if'
kernel/qapplication_x11.cpp:5614: ISO C++ forbids declaration of `
   sm_blockUserInput' with no type
kernel/qapplication_x11.cpp:5614: conflicting types for `int sm_blockUserInput'
kernel/qapplication_x11.cpp:335: previous declaration as `bool
   sm_blockUserInput'
kernel/qapplication_x11.cpp:5615: parse error before `return'
kernel/qapplication_x11.cpp:5622: cannot declare member function `
   QSessionManager::allowsErrorInteraction' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5622: syntax error before `{' token
kernel/qapplication_x11.cpp:5635: ISO C++ forbids declaration of `
   sm_waitingForInteraction' with no type
kernel/qapplication_x11.cpp:5635: redefinition of `int sm_waitingForInteraction
   '
kernel/qapplication_x11.cpp:5611: `int sm_waitingForInteraction' previously
   defined here
kernel/qapplication_x11.cpp:5636: parse error before `if'
kernel/qapplication_x11.cpp:5638: ISO C++ forbids declaration of `
   sm_blockUserInput' with no type
kernel/qapplication_x11.cpp:5638: redefinition of `int sm_blockUserInput'
kernel/qapplication_x11.cpp:5614: `int sm_blockUserInput' previously defined
   here
kernel/qapplication_x11.cpp:5639: parse error before `return'
kernel/qapplication_x11.cpp:5646: cannot declare member function `
   QSessionManager::release' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5646: syntax error before `{' token
kernel/qapplication_x11.cpp:5649: ISO C++ forbids declaration of `
   sm_interactionActive' with no type
kernel/qapplication_x11.cpp:5649: conflicting types for `int
   sm_interactionActive'
kernel/qapplication_x11.cpp:5276: previous declaration as `bool
   sm_interactionActive'
kernel/qapplication_x11.cpp:5650: parse error before `if'
kernel/qapplication_x11.cpp:5656: cannot declare member function `
   QSessionManager::cancel' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5656: syntax error before `{' token
kernel/qapplication_x11.cpp:5660: incomplete type `QSessionManager' does not
   have member `RestartHint'
kernel/qapplication_x11.cpp:5660: parse error before `)' token
kernel/qapplication_x11.cpp:5661: cannot declare member function `
   QSessionManager::setRestartHint' within `QSessionManagerData'
kernel/qapplication_x11.cpp:5661: syntax error before `{' token
kernel/qapplication_x11.cpp:5665: syntax error before `::' token
kernel/qapplication_x11.cpp:5671: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp: In member function `void
   QSessionManager::setRestartCommand(const QStringList&)':
kernel/qapplication_x11.cpp:5672: `d' undeclared (first use this function)
kernel/qapplication_x11.cpp: At global scope:
kernel/qapplication_x11.cpp:5676: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp: In member function `QStringList
   QSessionManager::restartCommand() const':
kernel/qapplication_x11.cpp:5676: return type `struct QStringList' is
   incomplete
kernel/qapplication_x11.cpp: At global scope:
kernel/qapplication_x11.cpp:5681: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp:5686: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp: In member function `QStringList
   QSessionManager::discardCommand() const':
kernel/qapplication_x11.cpp:5686: return type `struct QStringList' is
   incomplete
kernel/qapplication_x11.cpp: At global scope:
kernel/qapplication_x11.cpp:5691: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp: In member function `void
   QSessionManager::setProperty(const QString&, const QString&)':
kernel/qapplication_x11.cpp:5694: no matching function for call to `QString::
   utf8() const'
kernel/qapplication_x11.cpp: At global scope:
kernel/qapplication_x11.cpp:5699: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp: In member function `void
   QSessionManager::setProperty(const QString&, const QStringList&)':
kernel/qapplication_x11.cpp:5700: invalid use of undefined type `struct
   QStringList'
kernel/qfont.h:47: forward declaration of `struct QStringList'
kernel/qapplication_x11.cpp:5702: incomplete type `QStringList' does not have
   member `ConstIterator'
kernel/qapplication_x11.cpp:5702: parse error before `=' token
kernel/qapplication_x11.cpp:5702: invalid use of undefined type `struct
   QStringList'
kernel/qfont.h:47: forward declaration of `struct QStringList'
kernel/qapplication_x11.cpp: At global scope:
kernel/qapplication_x11.cpp:5712: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
kernel/qapplication_x11.cpp:5717: invalid use of undefined type `struct
   QSessionManager'
kernel/qapplication.h:48: forward declaration of `struct QSessionManager'
{standard input}: Assembler messages:
{standard input}:617: Error: symbol `smcConnection' is already defined
{standard input}:623: Error: symbol `sm_waitingForInteraction' is already defined
{standard input}:629: Error: symbol `sm_blockUserInput' is already defined
make: *** Error 1
make: Leaving directory `/usr/local/src/qt-2.3.2/src'
make: *** Error 2
make: Leaving directory `/usr/local/src/qt-2.3.2'
make: *** Error 2
页: [1]
查看完整版本: 如何编译可以使QT库小