Discussion Board

Page 1 of 2 12 LastLast
Results 1 to 15 of 25
  1. #1
    Registered User remy_david's Avatar
    Join Date
    Sep 2009
    Posts
    73
    Hi all,

    I am new to Qt but not to C++ & mobile development.
    I need your help to know if my project can be done and how.

    What I need :
    - Target my applicaiton to Symbian S60 5th edition and Symbian^3 devices
    - Use cryptography (DES or AES)
    - Use a JSON parser
    - Use Qt SDK & Qt Creator

    Problems that I can see :
    - Qt SDK API do not support cryptography
    - Qt SDK API do not support JSON

    Solutions that I can see:
    - Use external C++ JSON & cryptography libraries
    Is this possible ? what condition must be met by these library to integrate well in Qt SDK ? Do you know which one ? Is there another solution ? (use Symbian C++ API ?)

    Thanks

  2. #2
    Nokia Developer Moderator divanov's Avatar
    Join Date
    Oct 2009
    Posts
    4,326
    All problems has been discussed here. Search is your friend.

  3. #3
    Nokia Developer Champion danhicksbyron's Avatar
    Join Date
    Nov 2009
    Location
    Minnesota, USA
    Posts
    3,209
    There is a good crypto library in the native Symbian code. It is relatively easy to access (though a bit obscure to interface with) if you get the right interface stuff. Google "SymbianCryptographyLibraries.zip" to find a copy on the net. (Nokia doesn't make it readily available, but several other sources do.) (Note, for legal reasons you want to use the crypto code built into the phone vs shipping your own and running afoul of import/export regulations.)

    There are some rather bloated open source JSON libraries available on the net, or you can write your own Qt version in about 1000 lines of code -- it's a relatively simple exercise. (I'd make mine available except that it belongs to my employer.)

  4. #4
    Registered User remy_david's Avatar
    Join Date
    Sep 2009
    Posts
    73
    @ danhicksbyron : Thanks, I will look in that directions.

    @ divanov : I understand your point, but I think you can't imagine how hard it is for someone not familiar with Nokia mobile development to find UP TO DATE answer to technical questions BEFORE actually starting to use Nokia mobile tools and frameworks. Event for an experienced C++ & (non-Nokia) mobile developer.

  5. #5
    Nokia Developer Moderator divanov's Avatar
    Join Date
    Oct 2009
    Posts
    4,326
    Quote Originally Posted by remy_david View Post
    @ divanov : I understand your point, but I think you can't imagine how hard it is for someone not familiar with Nokia mobile development to find UP TO DATE answer to technical questions BEFORE actually starting to use Nokia mobile tools and frameworks. Event for an experienced C++ & (non-Nokia) mobile developer.
    You didn't sell that to me.

  6. #6
    Nokia Developer Champion danhicksbyron's Avatar
    Join Date
    Nov 2009
    Location
    Minnesota, USA
    Posts
    3,209
    The trick is to learn how to use Google effectively. If you Google "qt json site:forum.nokia.com" you will get several references on using JSON (including this thread). The "site:forum.nokia.com" limits your search to this site, greatly reducing the "noise".

  7. #7
    Registered User remy_david's Avatar
    Join Date
    Sep 2009
    Posts
    73
    I have trouble on how to use Symbian API in Qt SDK.
    I found this:
    http://developer.symbian.org/wiki/Us...n_C++_Together
    but it does not describe how to set up the environment.

    For now, I tried to use the Symbian cryptographic API, but I am stuck on how to import it correctly into Qt Creator.

    I installed C/C++ plugins, then installed the cryptography API from here:
    http://wiki.forum.nokia.com/index.ph...ptography_APIs

    Then I copied the corresponding .h in C:\NokiaQtSDK\Symbian\SDK\epoc32

    I edited my project .pro to add
    Code:
    INCLUDEPATH += C:\NokiaQtSDK\Symbian\SDK\epoc32\include
    LIBS+= -lcryptography \
                  -leuser // edited
    At compilation I have the same problem that this guy:
    http://discussion.forum.nokia.com/fo...hlight=symbian

    Code:
    g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"..\..\Simulator\Qt\mingw\include\QtCore" -I"..\..\Simulator\Qt\mingw\include\QtGui" -I"..\..\Simulator\Qt\mingw\include" -I"..\..\Symbian\SDK\epoc32\include" -I"..\..\Simulator\Qt\mingw\include\ActiveQt" -I"debug" -I"." -I"..\encrypttest" -I"." -I"..\..\Simulator\Qt\mingw\mkspecs\win32-g++" -o debug\main.o ..\encrypttest\main.cpp
    
    n file included from ..\..\Symbian\SDK\epoc32\include/e32cmn.h:1104,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32std.h:13,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32base.h:8,
    
                     from ..\..\Symbian\SDK\epoc32\include/cryptosymmetric.h:20,
    
                     from ..\encrypttest\/mainwindow.h:12,
    
                     from ..\encrypttest\main.cpp:8:
    
    ..\..\Symbian\SDK\epoc32\include/e32des16.h:691:2: error: #error no typedef for __TText
    
    In file included from ..\..\Symbian\SDK\epoc32\include/e32err.h:13,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32const.h:9,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32cmn.h:8,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32std.h:13,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32base.h:8,
    
                     from ..\..\Symbian\SDK\epoc32\include/cryptosymmetric.h:20,
    
                     from ..\encrypttest\/mainwindow.h:12,
    
                     from ..\encrypttest\main.cpp:8:
    
    ..\..\Symbian\SDK\epoc32\include/e32def.h:872: error: 'Int64' does not name a type
    
    ..\..\Symbian\SDK\epoc32\include/e32def.h:883: error: 'Uint64' does not name a type
    
    In file included from ..\..\Symbian\SDK\epoc32\include/e32cmn.h:8,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32std.h:13,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32base.h:8,
    
                     from ..\..\Symbian\SDK\epoc32\include/cryptosymmetric.h:20,
    
                     from ..\encrypttest\/mainwindow.h:12,
    
                     from ..\encrypttest\main.cpp:8:
    
    ..\..\Symbian\SDK\epoc32\include/e32const.h:860: error: 'TInt64' does not name a type
    
    ..\..\Symbian\SDK\epoc32\include/e32const.h:871: error: 'TInt64' does not name a type
    
    ..\..\Symbian\SDK\epoc32\include/e32const.h:882: error: 'TUint64' does not name a type
    
    In file included from ..\..\Symbian\SDK\epoc32\include/e32std.h:13,
    
                     from ..\..\Symbian\SDK\epoc32\include/e32base.h:8,
    
                     from ..\..\Symbian\SDK\epoc32\include/cryptosymmetric.h:20,
    
                     from ..\encrypttest\/mainwindow.h:12,
    
                     from ..\encrypttest\main.cpp:8:
    
    ..\..\Symbian\SDK\epoc32\include/e32cmn.h:41: error: 'IMPORT_C' does not name a type
    Thanks in advance for any advice.
    Last edited by remy_david; 2010-11-22 at 08:48.

  8. #8
    Nokia Developer Champion danhicksbyron's Avatar
    Join Date
    Nov 2009
    Location
    Minnesota, USA
    Posts
    3,209
    Should be:
    Code:
    LIBS+= -lcryptography \
                  -leuser

  9. #9
    Registered User remy_david's Avatar
    Join Date
    Sep 2009
    Posts
    73
    Thank you for pointing this, but I have the same errors. However I edited my last post to reflect the change.

    Correct me if I am wrong, but I think it is not a lib problem because the errors arise at compilation time. I think I am missing the right headers, but which ones ?
    Last edited by remy_david; 2010-11-22 at 08:53.

  10. #10
    Nokia Developer Champion danhicksbyron's Avatar
    Join Date
    Nov 2009
    Location
    Minnesota, USA
    Posts
    3,209
    Yeah, you appear to have a configuration problem. Not unusual, and not something I know much about.

  11. #11
    Registered User remy_david's Avatar
    Join Date
    Sep 2009
    Posts
    73
    I am still stuck with using Symbian C++ into Qt Creator, I leave the crypto API appart for the moment, I just want to compile a single Symbian C++ line of code to be sure my configuration is correct:

    TUInt32 i = 0;
    Should be simple, right ?

    To summarize, here is what I did:
    - Install S60 SDK
    - Install Qt SDK
    - Install open C/C++ plugins
    - Install Qt for Symbian into S60 SDK (don't think it is necessary though)
    - Create a new Qt project in Qt Creator
    - Add S60 SDK include path to the .pro
    - Add LIBS+= -leuser to the .pro

    Now if I import "e32def.h" or any other Symbian C++ header in my empty project, I got hundreds of errors like
    ..\..\Symbian\SDK\epoc32\include/e32des16.h:691:2: error: #error no typedef for __TText
    ..\..\Symbian\SDK\epoc32\include/e32def.h:872: error: 'Int64' does not name a type
    ..\..\Symbian\SDK\epoc32\include/e32def.h:883: error: 'Uint64' does not name a type
    If I don't add any header and simply add "TUInt32 i = 0;" to my .cpp main, I also got error: 'TUint32' does not name a type

    Any help would be really appreciated.
    Qt and Nokia Qt SDK are great but are still laking some basics APIs. If we cannot easily reach native APIs to overcome this, the whole thing is quite useless.

    Thanks

  12. #12
    Nokia Developer Champion danhicksbyron's Avatar
    Join Date
    Nov 2009
    Location
    Minnesota, USA
    Posts
    3,209
    What do you get if you type "devices" in a command window?

  13. #13
    Registered User remy_david's Avatar
    Join Date
    Sep 2009
    Posts
    73
    Thanks for your reply.

    I have:
    Nokia_N97_SDK_v1.0:com.nokia.s60 - default
    S60_3rd_FP2_SDK_v1.1:com.nokia.s60
    S60_5th_Edition_SDK_v1.0:com.nokia.s60
    Same appens if I change the default SDK.

  14. #14
    Nokia Developer Champion danhicksbyron's Avatar
    Join Date
    Nov 2009
    Location
    Minnesota, USA
    Posts
    3,209
    It would be nice if someone would write up how to do this. I don't think you should have to add the S60 SDK to INCLUDEPATH. And I think you may have installed one SDK too many.

  15. #15
    Registered User remy_david's Avatar
    Join Date
    Sep 2009
    Posts
    73
    From what I understand what I was trying to do is not possible. You cannot use native Symbian code / API in Qt Simulator.
    What we should be able to do however is to run it into the Symbian SDK Emulators. So far I did not find how to do that.

    I can only select "S60_5th_Edition_SDK_v1.0 (Qt 4.7.1)" as a "Symbian Device" target, so Qt Creator wants a real device to be connected. I don't know how to tell him to launch the SDK Emulator instead.
    Anyone ?

Page 1 of 2 12 LastLast

Similar Threads

  1. How to download JSON ME Api "org.json.me.zip"
    By narendar_discover in forum Mobile Java Networking & Messaging & Security
    Replies: 5
    Last Post: 2010-05-01, 12:15
  2. Need advices~
    By verbalwizard in forum Symbian Networking & Messaging (Closed)
    Replies: 4
    Last Post: 2009-07-24, 14:49
  3. I need some advices
    By truongtronghai in forum Symbian C++
    Replies: 2
    Last Post: 2006-04-15, 17:23

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved