[Gta04-owner] Experimental QtMoko/GTA04 build for armhf

Gilles Filippini gilles.filippini at free.fr
Wed Oct 24 00:41:28 CEST 2012


Neil Jerram a écrit , Le 24/10/2012 00:26:
> Neil Jerram <neil at ossau.homelinux.net> writes:
> 
>> Gilles Filippini <gilles.filippini at free.fr> writes:
>>
>>> Hi,
>>>
>>> Neil Jerram a écrit , Le 05/10/2012 19:36:
>>>> Could you also outline how to build QtMoko for armhf?  Presumably another toolchain is needed.
>>>
>>> Not sure about which method Radek uses, but there are some directions in
>>> debian/README.source to build with pdebuild-cross.
>>
>> Thanks, I'll try that.
> 
> I've followed the instructions in debian/README.source.  There were a
> couple of things I had to infer - possibly wrongly - and the last step
> in the recommended workflow doesn't get very far at all for me - so I'd
> appreciate if you could review the following.
> 
> First, I guessed that all the example workflow steps should be run in
> the root of the QtMoko tree.  Is that right?
> 
> Second, I found that the pdebuild-cross-create step created an armel
> chroot.  I then copied debian/pdebuild-cross/pdebuild-cross.rc to
> /etc/pdebuild-cross/ and debian/pdebuild-cross/multistrap-* to
> /etc/multistrap/ and reran the pdebuild-cross-create step, and it looked
> better:
> 
>   ...
> 
>   Multistrap system installed successfully in /var/lib/pdebuild-cross/build/.
> 
>   Compressing multistrap system in '/var/lib/pdebuild-cross/build/' to a tarball called: 'pdebuild-cross-armhf-wheezy-4.7.tar.gz'.
> 
>   Removing build directory: '/var/lib/pdebuild-cross/build/'
> 
>   Multistrap system packaged successfully as '/var/lib/pdebuild-cross/pdebuild-cross-armhf-wheezy-4.7.tar.gz'.
> 
> Was installing those configs the right thing to do?

Yes.

> Next the fix-pdebuild-cross step, which looked fine apart from these
> warnings:
> 
>   ...
>   W: /root/.pbuilderrc does not exist
>   ...
>   dpkg-architecture: warning: specified GNU system type arm-linux-gnueabihf does not match gcc system type i486-linux-gnu, try setting a correct CC environment variable
>   ...
> 
> Do those indicate that I missed something?

No, you can ignore them.

> Next the QtMoko build step as per README.source:
> 
>   neil at neil-laptop:~/qtv46/qtmoko$ CROSSARCH=armhf CROSSVERS=4.7 DIST=sid QTMOKO_DEVICES=gta04 pdebuild-cross
>   Need to create a new pbuilder crossbuilding chroot first.
>   Use pdebuild-cross-create to create one.
> 
> I guessed that the 'sid' here might be a typo, and so tried 'wheezy'

Right.

> instead, but it still didn't get very far:
> 
>   neil at neil-laptop:~/qtv46/qtmoko$ CROSSARCH=armhf CROSSVERS=4.7 DIST=wheezy QTMOKO_DEVICES=gta04 pdebuild-cross
>   W: /home/neil/.pbuilderrc does not exist
>   dpkg-checkbuilddeps: Unmet build dependencies: libts-dev libspeexdsp-dev quilt
>   W: Unmet build-dependency in source
>   dpkg-buildpackage: source package qtmoko
>   dpkg-buildpackage: source version 48-1
>   dpkg-buildpackage: source changed by Radek Polak <psonek2 at seznam.cz>
>   dpkg-architecture: warning: specified GNU system type arm-linux-gnueabihf does not match gcc system type i486-linux-gnu, try setting a correct CC environment variable
>    dpkg-source --before-build qtmoko
>    fakeroot debian/rules clean
>   cp debian/control-src debian/control
>   for device in gta04; do \
>   		cat debian/control-$device >> debian/control; \
>   	done
>   dh clean
>      dh_testdir
>      debian/rules override_dh_auto_clean
>   make[1]: Entering directory `/home/neil/qtv46/qtmoko'
>   # If needed, revert QT_VERSION specific patches
>   if [ "$(basename "$(readlink -f debian/patches/series)")" != "series-main" ]; then \
>   		if quilt app; then \
>   			quilt pop -a; \
>   		fi; \
>   		ln -fs series-main debian/patches/series; \
>   	fi
>   for device in gta04; do \
>   		[ ! -f devices/$device/mkspecs/qws/linux-native-g++/qmake.conf.orig ] || mv devices/$device/mkspecs/qws/linux-native-g++/qmake.conf.orig devices/$device/mkspecs/qws/linux-native-g++/qmake.conf; \
>   		rm -fr ../build-$device; \
>   	done
>   rm -f sdk/LICENSE.QtopiaGPL
>   make[1]: Leaving directory `/home/neil/qtv46/qtmoko'
>      dh_clean
>    dpkg-source -b qtmoko
>   dpkg-source: error: can't build with source format '3.0 (quilt)': no upstream tarball found at ../qtmoko_48.orig.tar.{bz2,gz,lzma,xz}
>   dpkg-buildpackage: error: dpkg-source -b qtmoko gave error exit status 255
> 
> Do you know what is going wrong here?  I can provide the complete
> transcript if it's needed.

The orig.tar.gz tarball has to be created before-hand, using the
'get-orig-source' target of debian/rules:
 $ ./debian/rules get-orig-source

Thanks for the report,

_g.


More information about the Gta04-owner mailing list