Re: building qt4 for arm

Rieker Flaik <[email protected]>
Newsgroups gmane.linux.debian.devel.embedded
Message-ID <1360918852.2016.10.camel@lovely>
On Fri, 2013-02-15 at 07:27 +0000, Neil Williams wrote:
> On Fri, 15 Feb 2013 00:10:49 +0100
> Rieker Flaik <[email protected]> wrote:
> 
> > On Tue, 2013-02-12 at 16:34 +0000, Neil Williams wrote:
> > > On Tue, 12 Feb 2013 16:28:17 +0100
> > > Rieker Flaik <[email protected]> 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


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/1360918852.2016.10.camel@lovely
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.