Someone tried to publish N9 applications ?
-
Can you show me your desktop file does it contain a line like:
@invoker --single-instance --type=d /opt/CoolApp/bin/CoolApp@The one in QtCreator probably does but I would bet that the one that ends up in the deb package does not.
It seems that the workaround provided by Matrixx solves this issue but than we face the problem of the pressing the icon not invoking the app (at leas I am).So Investigated it and it seems that if I try launching the app form the terminal using:
@invoker --single-instance --type=d /opt/CoolApp/bin/CoolApp@
results in sth like this:
@invoker: Invoking execution: '/opt/CoolApp/bin/CoolApp'
Booster: Loading symbol 'main' failed: '/opt/CoolApp/bin/CoolApp undefined symbol: main'@This is all very strange to me ass simply calling:
@/opt/CoolApp/bin/CoolApp@
gets the app started no problem :| -
Hi kkrzweniak,
thank you for thie hew trick ;)
Please take a look to this post: "Single instance applications on N950":http://developer.qt.nokia.com/forums/viewthread/8132
where you can find all the information about this problem. There is the full code of my .desktop file and the changes I have made too. The trick mentioned in this post was partially already known, so I tried it but unfortunately with any result...
Thank you again. Enrico
P.S. The app as you show in your tests, runs correctly also for me in the terminal.
-
... to be sure, the following is the actual .desktop file (copied just now from the project)
@
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=false
Name=QtComplexHarmattan1_1_0
Exec=invoker --single-instance --type=d /opt/QtComplexHarmattan1_1_0/bin/QtComplexHarmattan1_1_0
Icon=/usr/share/icons/hicolor/64×64/apps/QtComplexHarmattan1_1_0.png
X-Window-Icon=
X-HildonDesk-ShowInToolbar=true
X-Osso-Type=application/x-executable
@ -
Does it start for you if you try to use invoker in the terminal?
-
no, I tested only the /opt/application ...
I have not yet found where are the .desktop files. I am investigating now.
-
the destkop files should be in:
@/usr/share/applications@ -
@kkrzewniak If you get the error Booster: Loading symbol 'main' failed: '/opt/CoolApp/bin/CoolApp undefined symbol: main'
it's because when booster is enabled, none of the functions are exported by default. You have to export your main function like this:
@
Q_DECL_EXPORT int main(int argc, char *argv[])
{ ... }
@It's all explained better here:
http://harmattan-dev.nokia.com/unstable/beta/api_refs/xml/daily-docs/applauncherd/ -
Grate thanks this fixed it, the app now works as expected (single instance) :)
-
Hi matrixx,
thankyo very much for the doc link in effect it is very useful. Remain the problem of the packaging in a single-instance mode. Do you have tried with Qt SDK 4.8 ? It is strange that your suggestions won't work but I know that in some other projects works.
-
@kkrzewniak I'm glad it solved your problem :)
@Alicemirror I haven't tried with 4.8 yet, I'm using the latest 1.1 SDK released with Qt 4.7 (4.7.4 on Harmattan) and it works fine after the tricks I mentioned. I also know people you hadn't have to do anything to get a working project. It seems to work very irrationally for different people. I also wonder if development platform is one affecting factor, mine is Win 7 64bit.
-
Hi matrixx,
thank you again for your help. Irrational is the right word. I have tried with Mac but I can try also with Windows 7 32 bit.
A question: how can I upgrade my 4.7.3 (all updated online after the offline installation )to the 4.7.4?
Then about the 4.8 it should be excluded because this version is not accepted by Ovi store..