radekp / qtmoko

QtExtended, formerly known as Qtopia from TrollTech, discontinued by Nokia
http://qtmoko.org
Other
70 stars 39 forks source link

Cross-build for armhf #134

Closed pini-gh closed 11 years ago

pini-gh commented 11 years ago

Hi Radek,

This commit introduces support for armhf cross-building. While the build is successful, I've not tested the resulting package on the GTA04 yet.

Thanks,

_g.

radekp commented 11 years ago

Hmm i wonder how you managed to build it on armhf with Qt 4.7. For me it always ended up in some assembly error in qobject.cpp. On internet i found discussion where they say that Qt 4.8 has this fixed - so i have now QtMoko running with latest Qt 4.8.3 - but i didnt have time yet to try armhf build - but i think i am on the right way - i have armhf kernel and rootfs now, so last thing is armhf QtMoko.

Btw i tried native armhf build which might be the difference.

pini-gh commented 11 years ago

De: "Radek Polak" notifications@github.com À: "radekp/qtmoko" qtmoko@noreply.github.com Cc: "pini-gh" gilles.filippini@free.fr Envoyé: Mercredi 3 Octobre 2012 11:39:26 Objet: Re: [qtmoko] Cross-build for armhf (#134)

Hmm i wonder how you managed to build it on armhf with Qt 4.7. For me it always ended up in some assembly error in qobject.cpp. On

This one? "Error: selected processor does not support Thumb mode `swp r6,r4,[r0]'"

The fix is to add '-marm' to CFLAGS. See the related comment in debian/rules.

internet i found discussion where they say that Qt 4.8 has this fixed - so i have now QtMoko running with latest Qt 4.8.3 - but i didnt have time yet to try armhf build - but i think i am on the right way - i have armhf kernel and rootfs now, so last thing is armhf QtMoko.

Great! I'm currently experimenting with polystrap [1] to automate the rootfs creation.

[1] http://anonscm.debian.org/gitweb/?p=emdebian/polystrap.git;a=blob_plain;f=README;hb=HEAD

Thanks,

_g.

radekp commented 11 years ago

On Wednesday, October 03, 2012 12:13:29 PM pini-gh wrote:

The fix is to add '-marm' to CFLAGS. See the related comment in debian/rules.

I checked it, but i dont understand, if the flag is used also for native debian package - which i am using.

I have now another problem:

root@qtmoko-buildhost:~/qte/qtmoko# dpkg-buildpackage dpkg-buildpackage: source package qtmoko dpkg-buildpackage: source version 48-1 dpkg-buildpackage: source changed by Radek Polak psonek2@seznam.cz dpkg-buildpackage: host architecture armhf dpkg-source --before-build qtmoko dpkg-source: info: applying restart-when-modem-stops-working.patch dpkg-source: info: applying mokofaen-as-default-theme.patch dpkg-source: info: applying fix-build-error-when-cross-building-with- g-4.4.patch patching file qtopiacore/qt/src/declarative/debugger/qdeclarativedebugserver.cpp Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored dpkg-source: info: fuzz is not allowed when applying patches dpkg-source: info: if patch 'fix-build-error-when-cross-building-with- g-4.4.patch' is correctly applied by quilt, use 'quilt refresh' to update it dpkg-source: error: LC_ALL=C patch -t -F 0 -N -p1 -u -V never -g0 -E -b -B .pc/fix-build-error-when-cross-building-with-g-4.4.patch/ --reject-file=- < qtmoko/debian/patches/fix-build-error-when-cross-building-with-g-4.4.patch gave error exit status 1 dpkg-buildpackage: error: dpkg-source --before-build qtmoko gave error exit status 2 root@qtmoko-buildhost:~/qte/qtmoko#

Maybe we should commit these patches to git instead of maintaing patches?

Regards

Radek

pini-gh commented 11 years ago

----- Mail original -----

De: "Radek Polak" notifications@github.com À: "radekp/qtmoko" qtmoko@noreply.github.com Cc: "pini-gh" gilles.filippini@free.fr Envoyé: Mercredi 3 Octobre 2012 15:25:18 Objet: Re: [qtmoko] Cross-build for armhf (#134)

On Wednesday, October 03, 2012 12:13:29 PM pini-gh wrote:

The fix is to add '-marm' to CFLAGS. See the related comment in debian/rules.

I checked it, but i dont understand, if the flag is used also for native debian package - which i am using.

I dont't know. Some more testing is needed...

I have now another problem: [...] dpkg-source: info: fuzz is not allowed when applying patches dpkg-source: info: if patch 'fix-build-error-when-cross-building-with- g-4.4.patch' is correctly applied by quilt, use 'quilt refresh' to update it [...] Maybe we should commit these patches to git instead of maintaing patches?

Sure. I let it up to you because it's part of a submodule of the git tree.

Talking about submodules, how do you set the default branch/tag to checkout during "submodule update"? I haven't found this information from the git configuration files :/

Thanks,

_g.

radekp commented 11 years ago

On Wednesday, October 03, 2012 05:07:59 PM pini-gh wrote:

Sure. I let it up to you because it's part of a submodule of the git tree.

Oki.

Talking about submodules, how do you set the default branch/tag to checkout during "submodule update"? I haven't found this information from the git configuration files :/

Git keeps track only of the commit sha. It does not checkout named branches or tags. E.g.

git submodule

will show this information.

If you need to change submodule version, just go to submodule, checkout version that you want then go back to qtmoko base dir. Doing git status you will see it has changed:

radek@rp-thinkpad:~/qte/qtmoko$ git status

modified: qtopiacore/qt (new commits)

then just do: git add qtopiacore/qt git commit

other will have to do: git submodule init git submodule update

to update the submodules.

Regards

Radek