[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: building qt4 for arm



On Fri, 2013-02-15 at 07:27 +0000, Neil Williams wrote:
> On Fri, 15 Feb 2013 00:10:49 +0100
> Rieker Flaik <rieker_flaik@arcor.de> wrote:
> 
> > On Tue, 2013-02-12 at 16:34 +0000, Neil Williams wrote:
> > > On Tue, 12 Feb 2013 16:28:17 +0100
> > > Rieker Flaik <rieker_flaik@arcor.de> wrote:
> > 
> > > >    animation/qsequentialanimationgroup.cpp:467: warning: unused variable ‘q’
> > > >    ../../include/QtCore/../../src/corelib/arch/qatomic_arm.h: Assembler messages:
> > > >    ../../include/QtCore/../../src/corelib/arch/qatomic_arm.h:131: Error: no such instruction: `swpb %al,%bpl,[%rbx]'
> > > >    ../../include/QtCore/../../src/corelib/arch/qatomic_arm.h:131: Error: no such instruction: `swpb %al,%bpl,[%rbx]'
> > > 
> > > Due to lack of cross-dependencies, the wrong headers got included. That
> > > resulted in x86 assembly being included into the armel cross build, not
> > > surprisingly, that doesn't work.
> 
> Have you installed all of the cross dependencies?

I hope so:

/foo/bar/qt4-x11-4.6.3$ sudo embuilddeps -n -a armel
Constraint 'libjpeg-dev' is not available, omitting. (This could be a
virtual package or a bug.)
Checking that build dependencies 'debhelper (>= 7.4.13), quilt,
pkg-kde-tools (>= 0.6.4), flex, sharutils, firebird2.1-dev [amd64 armel
i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 sparc],
libasound2-dev [!kfreebsd-amd64 !kfreebsd-i386 !hurd-i386],
libaudio-dev, libcups2-dev, libdbus-1-dev, libfreetype6-dev,
libgl1-mesa-dev | libgl-dev, libglib2.0-dev, libglu1-mesa-dev |
libglu-dev, libgtk2.0-dev, libice-dev, unixodbc-dev, libjpeg-dev,
libmng-dev, libmysqlclient-dev, libpam0g-dev, libpng12-dev, libpq-dev,
libreadline-dev, libsm-dev, libsqlite0-dev, libsqlite3-dev,
libtiff4-dev, libx11-dev, libxcursor-dev, libxext-dev, libxft-dev,
libxi-dev, libxinerama-dev, libxmu-dev, libxrandr-dev, libxrender-dev,
libxslt1-dev, libxt-dev, libxtst-dev, zlib1g-dev, freetds-dev' for
qt4-x11 are installed.
No build dependencies to install for qt4-x11
Constraint 'libjpeg-dev' is not available, omitting. (This could be a
virtual package or a bug.)
Checking that cross build dependencies 'debhelper (>= 7.4.13), quilt,
pkg-kde-tools (>= 0.6.4), flex, sharutils, firebird2.1-dev [amd64 armel
i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 sparc],
libasound2-dev [!kfreebsd-amd64 !kfreebsd-i386 !hurd-i386],
libaudio-dev, libcups2-dev, libdbus-1-dev, libfreetype6-dev,
libgl1-mesa-dev | libgl-dev, libglib2.0-dev, libglu1-mesa-dev |
libglu-dev, libgtk2.0-dev, libice-dev, unixodbc-dev, libjpeg-dev,
libmng-dev, libmysqlclient-dev, libpam0g-dev, libpng12-dev, libpq-dev,
libreadline-dev, libsm-dev, libsqlite0-dev, libsqlite3-dev,
libtiff4-dev, libx11-dev, libxcursor-dev, libxext-dev, libxft-dev,
libxi-dev, libxinerama-dev, libxmu-dev, libxrandr-dev, libxrender-dev,
libxslt1-dev, libxt-dev, libxtst-dev, zlib1g-dev, freetds-dev' for
qt4-x11 are installed.
'qt4-x11' needs 42 cross dependencies installed: libxinerama-dev
zlib1g-dev sharutils libaudio-dev libxi-dev libxmu-dev libgtk2.0-dev
libasound2-dev libdbus-1-dev libpq-dev libglib2.0-dev quilt libx11-dev
libxft-dev libxt-dev libice-dev freetds-dev libgl1-mesa-dev
libsqlite0-dev libfreetype6-dev unixodbc-dev libjpeg-dev firebird2.1-dev
libreadline-dev libcups2-dev libxrandr-dev libxext-dev libpam0g-dev
libmng-dev libxrender-dev flex libtiff4-dev debhelper libmysqlclient-dev
libpng12-dev libsqlite3-dev libglu1-mesa-dev libxtst-dev pkg-kde-tools
libxcursor-dev libsm-dev libxslt1-dev
Use of uninitialized value $multiarch in concatenation (.) or string
at /usr/sbin/embuilddeps line 296.
 /usr/sbin/xapt -a armel   debhelper firebird2.1-dev flex freetds-dev
libasound2-dev libaudio-dev libcups2-dev libdbus-1-dev libfreetype6-dev
libgl1-mesa-dev libglib2.0-dev libglu1-mesa-dev libgtk2.0-dev libice-dev
libjpeg-dev libmng-dev libmysqlclient-dev libpam0g-dev libpng12-dev
libpq-dev libreadline-dev libsm-dev libsqlite0-dev libsqlite3-dev
libtiff4-dev libx11-dev libxcursor-dev libxext-dev libxft-dev libxi-dev
libxinerama-dev libxmu-dev libxrandr-dev libxrender-dev libxslt1-dev
libxt-dev libxtst-dev pkg-kde-tools quilt sharutils unixodbc-dev
zlib1g-dev

> 
> You should have lots of packages installed with the suffix -armel-cross.

Yes I have:

$ dpkg -l | grep "armel-cross" | awk '{print $2}' | wc -l
258

> dpkg -l |grep armel-cross

$ dpkg -l | grep "armel-cross" | awk '{print $2}' | xargs
base-files-armel-cross binutils-armel-cross bsdmainutils-armel-cross
bsdutils-armel-cross bzip2-armel-cross comerr-dev-armel-cross
coreutils-armel-cross debconf-armel-cross debconf-i18n-armel-cross
debhelper-armel-cross debianutils-armel-cross defoma-armel-cross
diffstat-armel-cross dpkg-armel-cross dpkg-dev-armel-cross
file-armel-cross firebird2.1-common-doc-armel-cross
firebird2.1-dev-armel-cross firebird2.5-common-armel-cross
firebird2.5-common-doc-armel-cross flex-armel-cross
fontconfig-armel-cross fontconfig-config-armel-cross
freetds-common-armel-cross freetds-dev-armel-cross gawk-armel-cross
gcc-4.4-base-armel-cross gettext-armel-cross gettext-base-armel-cross
groff-base-armel-cross html2text-armel-cross intltool-debian-armel-cross
krb5-multidev-armel-cross libacl1-armel-cross libasound2-armel-cross
libasound2-dev-armel-cross libatk1.0-0-armel-cross
libatk1.0-dev-armel-cross libattr1-armel-cross libaudio-dev-armel-cross
libaudio2-armel-cross libavahi-client3-armel-cross
libavahi-common-data-armel-cross libavahi-common3-armel-cross
libbz2-1.0-armel-cross libc-bin-armel-cross libc-dev-bin-armel-cross
libc6-armel-cross libc6-dev-armel-cross libcairo2-armel-cross
libcairo2-dev-armel-cross libcomerr2-armel-cross libcroco3-armel-cross
libct4-armel-cross libcups2-armel-cross libcups2-dev-armel-cross
libdatrie1-armel-cross libdb4.7-armel-cross libdb4.8-armel-cross
libdbus-1-3-armel-cross libdbus-1-dev-armel-cross
libdpkg-perl-armel-cross libdrm2-armel-cross libexpat1-armel-cross
libexpat1-dev-armel-cross libfbclient2-armel-cross
libfontconfig1-armel-cross libfontconfig1-dev-armel-cross
libfreetype6-armel-cross libfreetype6-dev-armel-cross
libgcc1-armel-cross libgcrypt11-armel-cross libgcrypt11-dev-armel-cross
libgdbm3-armel-cross libgl1-mesa-dev-armel-cross
libgl1-mesa-glx-armel-cross libglib2.0-0-armel-cross
libglib2.0-dev-armel-cross libglu1-mesa-armel-cross
libglu1-mesa-dev-armel-cross libgnutls-dev-armel-cross
libgnutls26-armel-cross libgomp1-armel-cross
libgpg-error-dev-armel-cross libgpg-error0-armel-cross
libgssapi-krb5-2-armel-cross libgssrpc4-armel-cross
libgtk2.0-0-armel-cross libgtk2.0-common-armel-cross
libgtk2.0-dev-armel-cross libice-dev-armel-cross libice6-armel-cross
libicu44-armel-cross libjasper1-armel-cross libjpeg62-armel-cross
libjpeg62-dev-armel-cross libk5crypto3-armel-cross
libkadm5clnt-mit7-armel-cross libkadm5srv-mit7-armel-cross
libkdb5-4-armel-cross libkeyutils1-armel-cross libkrb5-3-armel-cross
libkrb5-dev-armel-cross libkrb5support0-armel-cross liblcms1-armel-cross
liblcms1-dev-armel-cross libldap-2.4-2-armel-cross
liblocale-gettext-perl-armel-cross libltdl-dev-armel-cross
libltdl7-armel-cross liblzma2-armel-cross libmagic1-armel-cross
libmng-dev-armel-cross libmng1-armel-cross
libmysqlclient-dev-armel-cross libmysqlclient16-armel-cross
libncurses5-armel-cross libncurses5-dev-armel-cross
libnewt0.52-armel-cross libodbcinstq1c2-armel-cross
libpam-modules-armel-cross libpam0g-armel-cross libpam0g-dev-armel-cross
libpango1.0-0-armel-cross libpango1.0-common-armel-cross
libpango1.0-dev-armel-cross libpcre3-armel-cross
libpixman-1-0-armel-cross libpixman-1-dev-armel-cross
libpng12-0-armel-cross libpng12-dev-armel-cross libpopt0-armel-cross
libpq-dev-armel-cross libpq5-armel-cross libpthread-stubs0-armel-cross
libpthread-stubs0-dev-armel-cross libqt3-mt-armel-cross
libreadline-dev-armel-cross libreadline6-armel-cross
libreadline6-dev-armel-cross libsasl2-2-armel-cross
libselinux1-armel-cross libslang2-armel-cross libsm-dev-armel-cross
libsm6-armel-cross libsqlite0-armel-cross libsqlite0-dev-armel-cross
libsqlite3-0-armel-cross libsqlite3-dev-armel-cross
libssl-dev-armel-cross libssl0.9.8-armel-cross libstdc
++6-4.4-dev-armel-cross libstdc++6-armel-cross libsybdb5-armel-cross
libtasn1-3-armel-cross libtasn1-3-dev-armel-cross
libtext-charwidth-perl-armel-cross libtext-iconv-perl-armel-cross
libtext-wrapi18n-perl-armel-cross libthai-data-armel-cross
libthai0-armel-cross libtiff4-armel-cross libtiff4-dev-armel-cross
libtiffxx0c2-armel-cross libtimedate-perl-armel-cross
libunistring0-armel-cross libuuid1-armel-cross libx11-6-armel-cross
libx11-data-armel-cross libx11-dev-armel-cross libxau-dev-armel-cross
libxau6-armel-cross libxcb-render-util0-armel-cross
libxcb-render-util0-dev-armel-cross libxcb-render0-armel-cross
libxcb-render0-dev-armel-cross libxcb1-armel-cross
libxcb1-dev-armel-cross libxcomposite-dev-armel-cross
libxcomposite1-armel-cross libxcursor-dev-armel-cross
libxcursor1-armel-cross libxdamage-dev-armel-cross
libxdamage1-armel-cross libxdmcp-dev-armel-cross libxdmcp6-armel-cross
libxext-dev-armel-cross libxext6-armel-cross libxfixes-dev-armel-cross
libxfixes3-armel-cross libxft-dev-armel-cross libxft2-armel-cross
libxi-dev-armel-cross libxi6-armel-cross libxinerama-dev-armel-cross
libxinerama1-armel-cross libxml2-armel-cross libxml2-dev-armel-cross
libxml2-utils-armel-cross libxmu-dev-armel-cross
libxmu-headers-armel-cross libxmu6-armel-cross libxrandr-dev-armel-cross
libxrandr2-armel-cross libxrender-dev-armel-cross
libxrender1-armel-cross libxslt1-dev-armel-cross libxslt1.1-armel-cross
libxt-dev-armel-cross libxt6-armel-cross libxtst-dev-armel-cross
libxtst6-armel-cross libxxf86vm1-armel-cross linux-libc-dev-armel-cross
lsb-base-armel-cross m4-armel-cross make-armel-cross man-db-armel-cross
mesa-common-dev-armel-cross mysql-common-armel-cross
ncurses-bin-armel-cross odbcinst-armel-cross
odbcinst1debian2-armel-cross passwd-armel-cross patch-armel-cross
perl-armel-cross perl-base-armel-cross perl-modules-armel-cross
pkg-config-armel-cross pkg-kde-tools-armel-cross po-debconf-armel-cross
quilt-armel-cross readline-common-armel-cross sed-armel-cross
sensible-utils-armel-cross shared-mime-info-armel-cross
sharutils-armel-cross ttf-dejavu-core-armel-cross ucf-armel-cross
unixodbc-armel-cross unixodbc-dev-armel-cross whiptail-armel-cross
x11-common-armel-cross x11proto-composite-dev-armel-cross
x11proto-core-dev-armel-cross x11proto-damage-dev-armel-cross
x11proto-fixes-dev-armel-cross x11proto-input-dev-armel-cross
x11proto-kb-dev-armel-cross x11proto-randr-dev-armel-cross
x11proto-record-dev-armel-cross x11proto-render-dev-armel-cross
x11proto-xext-dev-armel-cross x11proto-xinerama-dev-armel-cross
xtrans-dev-armel-cross xz-utils-armel-cross zlib1g-armel-cross
zlib1g-dev-armel-cross

> 
> sudo embuilddeps -n -a armel
> in the qt4-x11-4.7.3 source gives:
> 
> /usr/sbin/xapt -a armel   debhelper firebird2.1-dev flex freetds-dev g++-4.6 libasound2-dev libaudio-dev libcups2-dev libdbus-1-dev libfreetype6-dev libgles2-dev libgles2-mesa-dev libglib2.0-dev libgstreamer-plugins-base0.10-dev libgstreamer0.10-dev libgtk2.0-dev libice-dev libjpeg-dev libmng-dev libmysqlclient-dev libpam0g-dev libpng12-dev libpq-dev libreadline-dev libsm-dev libsqlite0-dev libsqlite3-dev libssl-dev libtiff4-dev libx11-dev libxcursor-dev libxext-dev libxft-dev libxi-dev libxinerama-dev libxmu-dev libxrandr-dev libxrender-dev libxslt1-dev libxt-dev libxtst-dev libxv-dev pkg-kde-tools unixodbc-dev zlib1g-dev

Here it differs because I'm on "qt4-x11-4.6.3" and debian stable. As you
can see above I got these two warnings:

    - Constraint 'libjpeg-dev' is not available, omitting. (This could be a
      virtual package or a bug.)

    - Use of uninitialized value $multiarch in concatenation (.) or string at
      /usr/sbin/embuilddeps line 296.

> All of those will be needed as -armel-cross packages whether they are
> installed for the build architecture or not.
> 
> > > 
> > > It is probably best to ensure that libqt4-dev is not installed for your
> > > build architecture (the build arch == the Big machine or the Desktop
> > > machine - the host arch is the handheld architecture).
> > > 
> > > You don't want libqt4-dev itself when building Qt.
> > 
> > After purging libqt4-dev from the build arch and restarting all over:
> > I'm still getting the same errors.
> 
> That only happens if the compiler finds the headers for the build
> architecture, not the host architecture.
> 
> What suite are you running on the build machine? (stable, unstable or testing?)

debian stable amd64


Thanks
 Rik


Reply to: