maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Development (https://talk.maemo.org/forumdisplay.php?f=13)
-   -   Qt 4.6 in scratchbox running PR1.2, but not on device (https://talk.maemo.org/showthread.php?t=48755)

dragly 2010-03-30 16:32

Qt 4.6 in scratchbox running PR1.2, but not on device
 
I just reinstalled Scratchbox on my computer and got the newest SDK version PR1.2 with Qt4.6. While this is a good thing to begin with, it became a bad thing when I tried to compile packages and run these on my N900 device. Now I either get a segfault when trying to run the binaries directly or a dependency issue when trying to install packages built with dpkg-buildpackage.

The missing packages are
libhildon1 (>= 2.2.10)
libhildonmime0 (>= 2.15)
libqt4-core (>= 4.6.2~git20100224)
libqt4-gui (>= 4.6.2~git20100224)

which are some of the packages updated by PR1.2.

I already have libqt4-maemo5-* installed on the device, but I guess this doesn't help because the libraries are installed into /opt. And it fails to fulfill the dependencies because of the package name.

Right now it seems like I'm stuck in a situation where I can't do any development before PR1.2 is released. Is it possible to install these packages on the device before PR1.2 is released for N900? Or to revert the Scratchbox packages to Qt4.5?

krk969 2010-03-30 16:39

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
try linking with libqt4-maemo5 libraries and see if it works.
I was aware of this issue, so I refrained from updating my SDK :), not really sure why the smart move to update the autobuilder without even having a release date from Nokia for PR1.2 !

anyways would you try and let me know, AFAIK libqt4-maemo5* libs will be maintained for futue QT4.7 development.

But be warned you wont be able to promote the app to testing. :p

dragly 2010-03-30 16:46

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Seems like I must have tried to run
fakeroot apt-get libqt4-maemo5*
while in X86 mode in scratchbox. Then it returned nothing, but now it is installing :) When I think about it I might even have tried before adding extras-devel to the sources.list. That's the bad thing about a reinstall - you never know what part you forgot to do before doing a rebuild.

Do you have a quick command to use when building against libqt4-maemo5? I'll try to look for it myself, but I've never built against another version before.

Promoting the application won't be an issue yet :) I guess that could wait until PR1.2 is out. Now I just want to get on with the development :-p

krk969 2010-03-30 16:48

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
just use the qmake from /opt/qt4-maemo5 :) !

dragly 2010-03-30 16:49

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
I thought it would be something simple like that. I was actually trying it out now :)

I'll post back when I've tested it on the device.

dragly 2010-03-30 16:59

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
That fixed the issue with Qt :D but it still nags about the libhildon packages.

Missing packages:
libhildon1 (>= 2.2.10)
libhildonmime0 (>= 2.15)

However, that's only a problem with dpkg-buildpackage. Running the binaries directly works flawlessly now! I'll hopefully figure a way to avoid those dependencies, but until then I could just do it the hard way and copy binaries back and forth :p

Thanks for the help, krk969!

krk969 2010-03-30 17:03

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Quote:

Originally Posted by dragly (Post 588540)
That fixed the issue with Qt :D but it still nags about the libhildon packages.

Missing packages:
libhildon1 (>= 2.2.10)
libhildonmime0 (>= 2.15)

However, that's only a problem with dpkg-buildpackage. Running the binaries directly works flawlessly now! I'll hopefully figure a way to avoid those dependencies, but until then I could just do it the hard way and copy binaries back and forth :p

Thanks for the help, krk969!

you are welcome :) !

in case you are making a debian package, you could manually set dependencies to lower versions(PR1.1) of the hildon packages in the control file.
that might sort the issue with libhildon*

dragly 2010-03-30 17:24

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Quote:

Originally Posted by krk969 (Post 588546)
in case you are making a debian package, you could manually set dependencies to lower versions(PR1.1) of the hildon packages in the control file.
that might sort the issue with libhildon*

I'm trying to figure this out, but it doesn't help to set the version in "Build-Depends". It appears that
Code:

${shlibs:Depends}
doesn't care about the value set there. I've also tried adding it to "Depends" but again,
Code:

${shlibs:Depends}
still prints out the newest libhildon* versions.

As you probably understand I'm not used to work with debian packages :)

dragly 2010-03-31 15:08

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Alright. I figured how to set the dependencies to older versions, but the autobuilder on garage.maemo.org still downloads the newest package versions, so now I end up with unmet dependencies on the dev-packages.

Code:

Unable to satisfy build-deps: libhildon1-dev (= 2.2.0-2+ultrastable1+0m5) libhildonmime-dev (= 2.1.3-1+0m5)
Is there anything else I need to do apart from setting the version in Build-Depends to make the autobuilder use the right version?

krk969 2010-03-31 15:58

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Quote:

Originally Posted by dragly (Post 589962)
Alright. I figured how to set the dependencies to older versions, but the autobuilder on garage.maemo.org still downloads the newest package versions, so now I end up with unmet dependencies on the dev-packages.

Code:

Unable to satisfy build-deps: libhildon1-dev (= 2.2.0-2+ultrastable1+0m5) libhildonmime-dev (= 2.1.3-1+0m5)
Is there anything else I need to do apart from setting the version in Build-Depends to make the autobuilder use the right version?

not sure why it didnt work really.
<= version should have worked for the build-Depends in the control file.

dragly 2010-03-31 18:50

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Quote:

Originally Posted by krk969 (Post 590031)
not sure why it didnt work really.
<= version should have worked for the build-Depends in the control file.

Nope. Seems like it doesn't use the right packages for apt-get. Guess I'll just have to wait for the PR1.2 release.

Jaffa 2010-04-07 14:03

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
People interested in fixing it are encouraged to look at this post:

http://talk.maemo.org/showthread.php...349#post599349

Both the Community Council and the maemo.org team are trying to find a solution to this problem for now, and in the future.

dragly 2010-04-07 15:40

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Thanks for the info. I managed to get around the problem for now using libqt4-maemo5 and writing in all dependencies manually, thus leaving out the newest libhildon* libraries. Even if the application was compiled against the newest libraries, it didn't seem to be a problem to run it on the device. In my situation I was moving towards Qt4.6 anyways, so using libqt4-maemo5 was not really an issue in the end.

sampppa 2010-04-08 13:51

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
you can try to force install that package without manually modifying depencies and just let the ${shlibs:Depends} set them. For the libhildon case it may work, at least it did for my packages...
dpkg --force all -i package.deb

I think this is an ugly way but you can try :)

Bundyo 2010-04-12 21:47

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Didn't see a solution anywhere, but managed to squeeze my Search Tool through the new libhildon1 dependencies. Just create a debian/shlibs.local file and fill it with
Code:

libhildonmime 0 libhildonmime0 (>= 2.1.0)
libhildon-1 0 libhildon1 (>= 2.2.0)

That should be enough to keep the autobuilder dpkg-shlibdeps happy.

EDIT: The main problem actually was to find what exactly mean the first two values (which should be name and version). Turned out they are the name of the library in /usr/lib and the major version that comes right after .so. Didn't expect libhildon1 to have major version of 0... :)

napoleon 2010-04-19 22:03

Re: Qt 4.6 in scratchbox running PR1.2, but not on device
 
Cheers Bundyo, you're a life-saver!


All times are GMT. The time now is 22:20.

vBulletin® Version 3.8.8