Hi N Twerdochlib,

I did a few things to check into the Qt4 size issue. (I have not yet used Qt4 on the Gumstix, but I plan to start learning it in the near future, so I thought this was a good way to learn one or two things.)

First, I ran "bitbake qt4-embedded" to build all the Qt4 stuff for Gumstix. On my quad core machine, this took around 1 hour.

Next, I went to my "${OVEROTOP}/tmp/deploy/glibc/ipk/armv7a" directory to have a look at the new IPK files created. The Qt4 stuff,  together with MySQL, PostgreSQL, and other assorted stuff, came to 557MB. Clearly too much for the Overo 256MB NAND.

Then I had a closer look at the IPK files actually produced. I removed all files that had the following criteria:

Now the Qt4 files were still a hefty 56MB, but at least that is more likely to fit onto your Overo. (I say "more likely" because the IPK files are compressed, and will expand to fill up a bit more space.) But note that that includes all kinds of libraries that Qt4 uses only if you enable specific features. For your actual installation, you could probably slim it down to under 10MB, after you sit down and look at what you actually need (as Pat S. indicated earlier in the thread).

This is just my first stab at it. Probably someone with more Qt4 knowledge can suggest further ways to reduce the space requirements.

The directory "tmp/work/armv7a-angstrom-linux-gnueabi/qt4-embedded-4.6.2-r19.1/image" is not a good place to look to get a reasonable idea of the space requirements. That directory will contain *everything* that Qt4 can possibly install. However, you saw that multiple IPK files were generated from building the qt4-embedded recipe. This is because the various IPK files pick and choose what they install, to allow you to customize your Qt4 installation to your requirements. I would recommend that it is more useful to look in the "/tmp/deploy/glibc/ipk/armv7a" to see the actual IPK file sizes.

Regards,
Markus.



On 10-11-26 11:46 PM, N Twerdochlib wrote:
my build before I started trying to thin down was something in the range of
667mb (based on du -h output in the
tmp/work/armv7a-angstrom-linux-gnueabi/qt4-embedded-4.6.2-r19.1/image
directory).  I am wondering if I am really looking at the correct directory
now.  The package directory is more a long the lines of the sizes I was
expecting.

I have 4.7.0 on an X86 down to 24mb but still don't have a clean bitbake
build.

For the 4.7.0 recipe I am completely over writing the QT_CONFIG_FLAGS
variable, but am getting a compile error:

make[1]: Entering directory
`/home/nik/development/gumstix/tmp/work/armv7a-angstrom-linux-gnueabi/qt4-em
bedded-4.7.0-r25.1/qt-everywhere-opensource-src-4.7.0/src/gui'
arm-angstrom-linux-gnueabi-g++ -march=armv7-a -mtune=cortex-a8 -mfpu=neon
-mfloat-abi=softfp -mthumb-interwork -mno-thumb -c -include
.pch/release-shared-emb-auto/QtGui
-isystem/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnu
eabi/usr/include -fexpensive-optimizations -frename-registers
-fomit-frame-pointer -O2 -ggdb2 -fpermissive -fvisibility-inlines-hidden
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include/freetype2
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include/mysql
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include/postgresql -pthread
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include/glib-2.0
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/lib/glib-2.0/include -mfpu=neon -Wall -W -D_REENTRANT -fPIC -DQT_SHARED
-DQT_BUILD_GUI_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII
-DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS
-DQT_USE_FAST_CONCATENATION -DQT_HAVE_NEON -DQT_NO_FONTCONFIG
-DQT_NO_OPENTYPE -DQT_NO_STYLE_MAC -DQT_NO_STYLE_WINDOWSVISTA
-DQT_NO_STYLE_WINDOWSXP -DQT_NO_STYLE_GTK -DQT_NO_STYLE_WINDOWSCE
-DQT_NO_STYLE_WINDOWSMOBILE -DQT_NO_STYLE_S60 -DQ_INTERNAL_QAPP_SRC
-DQT_NO_DEBUG -DQT_NETWORK_LIB -DQT_CORE_LIB -D_LARGEFILE64_SOURCE
-D_LARGEFILE_SOURCE -I../../mkspecs/linux-g++ -I. -I../../include/QtCore
-I../../include/QtNetwork -I../../include -I../../include/QtGui
-I.rcc/release-shared-emb-auto -Iimage -I../3rdparty/harfbuzz/src -Idialogs
-I.moc/release-shared-emb-auto -I.uic/release-shared-emb-auto -o
.obj/release-shared-emb-auto/qapplication.o kernel/qapplication.cpp
kernel/qapplication.cpp: In member function 'void
QApplication::setInputContext(QInputContext*)':
kernel/qapplication.cpp:5321: warning: possible problem detected in
invocation of delete operator:
kernel/qapplication.cpp:156: warning: 'QApplicationPrivate::inputContext'
has incomplete type
../../include/QtGui/../../src/gui/kernel/qapplication.h:77: warning: forward
declaration of 'struct QInputContext'
kernel/qapplication.cpp:5321: note: neither the destructor nor the
class-specific operator delete will be called, even if they are declared
when the class is defined.
kernel/qapplication.cpp:5323: error: invalid use of incomplete type 'struct
QInputContext'
../../include/QtGui/../../src/gui/kernel/qapplication.h:77: error: forward
declaration of 'struct QInputContext'
kernel/qapplication.cpp: At global scope:
kernel/qapplication.cpp:5999: warning: unused parameter 'cshape'
make[1]: *** [.obj/release-shared-emb-auto/qapplication.o] Error 1
make[1]: Leaving directory
`/home/nik/development/gumstix/tmp/work/armv7a-angstrom-linux-gnueabi/qt4-em
bedded-4.7.0-r25.1/qt-everywhere-opensource-src-4.7.0/src/gui'
make: *** [sub-gui-make_default] Error 2

-----Original Message-----
From: Pat Suwalski [mailto:pat@suwalski.net] 
Sent: Friday, November 26, 2010 5:52 PM
To: gumstix-users@lists.sourceforge.net
Subject: Re: [Gumstix-users] QT4 Embedded build question

Just how small do you need it? With the default recipe, my libqtcoree4 
package is 2.8M extracted.

I know people here have been changing the recipe, but it's mostly things 
like changing the input plugins to built-ins, and so on.

--Pat

On 10-11-26 05:16 PM, N Twerdochlib wrote:
I have messages posted to the QtCentre forum.  Moving to 4.7.0 does not
fix
much.  Does/is anyone compiling qt4 embedded under open embedded /gumstix
and not using the canned recipe?

It does not seem to make much diff if I use 4.6 or 4.7 either way I can
not
get a small usable library.

-----Original Message-----
From: Pat Suwalski [mailto:pat@suwalski.net]
Sent: Friday, November 26, 2010 3:23 PM
To: General mailing list for gumstix users.
Subject: Re: [Gumstix-users] QT4 Embedded build question

Sounds like something to ask on the Qt mailing list. You might like to
try 4.7.0 first.

--Pat

On 10-11-26 03:17 PM, N Twerdochlib wrote:
I have modified the QT_CONFIG_FLAGS to basically include -qconfig
minimal and get the following compile error. This occurs if I try to
build the Qt 4.6.3 source under Ubuntu X86 as well. Thought maybe
someone here ran into this.

| arm-angstrom-linux-gnueabi-g++ -march=armv7-a -mtune=cortex-a8
-mfpu=neon -mfloat-abi=softfp -mthumb-interwork -mno-thumb -c


      
-isystem/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnu
eabi/usr/include
-fexpensive-optimizations -frename-registers -fomit-frame-pointer -O2
-ggdb2 -fpermissive -fvisibility-inlines-hidden


      
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include

        

      
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include/freetype2

        

      
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include/mysql

        

      
-I/home/nik/development/gumstix/tmp/sysroots/armv7a-angstrom-linux-gnueabi/u
sr/include/postgresql
-fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT
-fPIC -DQT_SHARED -DQT_BUILD_NETWORK_LIB -DQT_NO_USING_NAMESPACE
-DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT
-DQT_NO_DEBUG -DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE
-I../../mkspecs/linux-g++ -I. -I../../include/QtCore -I../../include
-I../../include/QtNetwork -I.rcc/release-shared-emb-arm -Ikernel
-I.moc/release-shared-emb-arm -o
.obj/release-shared-emb-arm/qtcpserver.o socket/qtcpserver.cpp

| access/qnetworkreplyimpl.cpp: In member function 'void
QNetworkReplyImplPrivate::setup(QNetworkAccessManager::Operation, const
QNetworkRequest&, QIODevice*)':

| access/qnetworkreplyimpl.cpp:254: error: 'QNetworkAccessHttpBackend'
was not declared in this scope

| access/qnetworkreplyimpl.cpp:254: error: parse error in template
argument list

| access/qnetworkreplyimpl.cpp:254: error: no matching function for call
to 'qobject_cast(QNetworkAccessBackend*&)'

| access/qnetworkreplyimpl.cpp: At global scope:

| access/qnetworkreplyimpl.cpp:512: warning: unused parameter 'data'

| make[1]: *** [.obj/release-shared-emb-arm/qnetworkreplyimpl.o] Error 1

| make[1]: *** Waiting for unfinished jobs....

| make[1]: Leaving directory


      
`/home/nik/development/gumstix/tmp/work/armv7a-angstrom-linux-gnueabi/qt4-em
bedded-4.6.3-r25.1/qt-everywhere-opensource-src-4.6.3/src/network'
| make: *** [sub-network-make_default-ordered] Error 2

| FATAL: oe_runmake failed

NOTE: package qt4-embedded-4.6.3-r25.1: task do_compile: Failed

ERROR: Function 'do_compile' failed (see


      
/home/nik/development/gumstix/tmp/work/armv7a-angstrom-linux-gnueabi/qt4-emb
edded-4.6.3-r25.1/temp/log.do_compile.31190
for further information)

It seems that the define QT_NO_HTTP is not correctly applied to all
source during the configure.

*Nicholas Twerdochlib*

*gcci-logo-small*

*407-275-3549*

*www.gcci.ca*





      
----------------------------------------------------------------------------
--
Increase Visibility of Your 3D Game App&   Earn a Chance To Win $500!
Tap into the largest installed PC base&   get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for
grabs.
http://p.sf.net/sfu/intelisp-dev2dev



_______________________________________________
gumstix-users mailing list
gumstix-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gumstix-users


----------------------------------------------------------------------------
--
Increase Visibility of Your 3D Game App&  Earn a Chance To Win $500!
Tap into the largest installed PC base&  get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
gumstix-users mailing list
gumstix-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gumstix-users




----------------------------------------------------------------------------
--
Increase Visibility of Your 3D Game App&  Earn a Chance To Win $500!
Tap into the largest installed PC base&  get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
gumstix-users mailing list
gumstix-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gumstix-users

----------------------------------------------------------------------------
--
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
gumstix-users mailing list
gumstix-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gumstix-users



------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
gumstix-users mailing list
gumstix-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gumstix-users