[END] QCA - AES 128/256 - Build Lib for Symbian



    • Latest news -
      No solution at this moment. Choose alternative solution.

    Dear All,

    I am using qca-2.0.3 and qca-ossl-2.0.0-beta3 right now. I have build the DLL and use it in new Qt Mobile Application project.

    *It's work perfectly on Desktop platform. *

    However, i cannot make use of the Library on Symbian Platform. It always return Recipe linkandpostlink failed with exit code 1..

    I tried to import .a and it's not work. And then i rename the .a to .lib and it's not work as well.

    I tried to include the .h .cpp only but of course it's not work again....

    What is the correct step of "Build lib stage" and "Import lib stage" ?

    Thanks.

    p.s. Honestly, the desktop version really perfect....but my project is Symbian platform.....



  • The error is rather generic error message. Is there no other output?

    It might help, if you'd show your .pro-file content, maybe there are things there that might need tweaking for symbian platform.



  • Below is the content of .Pro. Thanks.

    @
    SOURCES += aes-cmac.cpp
    #include(../examples.pri)

    CONFIG += console
    CONFIG -= app_bundle
    QT -= gui
    CONFIG +=qt
    mac:QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.3

    exists(crypto.prf) {
    # our apps should build against the qca in this tree
    include(crypto.prf)
    } else {
    # attempt to use system-wide qca
    CONFIG *= crypto
    }

    win32{
    CONFIG += crypto
    OTHER_FILES +=
    lib/libqca2.a
    lib/qca-ossl2.dll
    lib/qca2.dll
    LIBS += $$PWD/lib/qca2.dll
    LIBS += $$PWD/lib/qca-ossl2.dll
    }

    HEADERS +=
    qpipe.h
    qcaprovider.h
    qca_tools.h
    qca_textfilter.h
    qca_support.h
    qca_securemessage.h
    qca_securelayer.h
    qca_publickey.h
    qca_keystore.h
    qca_export.h
    qca_core.h
    qca_cert.h
    qca_basic.h
    qca.h
    x509v3.h
    x509_vfy.h
    x509.h
    whrlpool.h
    ui_compat.h
    ui.h
    txt_db.h
    ts.h
    tls1.h
    symhacks.h
    stack.h
    ssl23.h
    ssl3.h
    ssl2.h
    ssl.h
    sha.h
    seed.h
    safestack.h
    rsa.h
    ripemd.h
    rc4.h
    rc2.h
    rand.h
    pqueue.h
    pkcs12.h
    pkcs7.h
    pem2.h
    pem.h
    ossl_typ.h
    opensslv.h
    opensslconf.h
    ocsp.h
    objects.h
    obj_mac.h
    modes.h
    mdc2.h
    md5.h
    md4.h
    lhash.h
    kssl.h
    krb5_asn.h
    idea.h
    hmac.h
    evp.h
    err.h
    engine.h
    ecdsa.h
    ecdh.h
    ec.h
    ebcdic.h
    e_os2.h
    dtls1.h
    dso.h
    dsa.h
    dh.h
    des_old.h
    des.h
    crypto.h
    conf_api.h
    conf.h
    comp.h
    cms.h
    cast.h
    camellia.h
    buffer.h
    bn.h
    blowfish.h
    bio.h
    asn1t.h
    asn1_mac.h
    asn1.h
    aes.h

    RESOURCES +=
    common.qrc
    @

    [EDIT: code formatting, please wrap in @-tags, Volker]



  • What about the output? Or was "Recipe linkandpostlink failed with exit code 1" the whole of it?



  • The build target is Symbian ^3 Qt 4.6.3. As the log too long, i have put whole log in below link: http://www.sendspace.com/file/ga8kb7

    *Part of the log: *

    @ C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/build/aes-cmac/c_5271e7446ab6e7cb/aes_cmac_exe/armv5/udeb/moc_qca_core.o:(.rodata+0x134): undefined reference to QCA::EventHandler::~EventHandler()' C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/build/aes-cmac/c_5271e7446ab6e7cb/aes_cmac_exe/armv5/udeb/moc_qca_core.o:(.rodata+0x138): undefined reference toQCA::EventHandler::~EventHandler()'
    C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/build/aes-cmac/c_5271e7446ab6e7cb/aes_cmac_exe/armv5/udeb/moc_qca_core.o:(.rodata+0x16c): undefined reference to QCA::BasicContext::~BasicContext()' C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/build/aes-cmac/c_5271e7446ab6e7cb/aes_cmac_exe/armv5/udeb/moc_qca_core.o:(.rodata+0x170): undefined reference toQCA::BasicContext::~BasicContext()'
    C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/build/aes-cmac/c_5271e7446ab6e7cb/aes_cmac_exe/armv5/udeb/moc_qca_core.o:(.rodata+0x1ac): undefined reference to QCA::Provider::Context::~Context()' C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/build/aes-cmac/c_5271e7446ab6e7cb/aes_cmac_exe/armv5/udeb/moc_qca_core.o:(.rodata+0x1b0): undefined reference toQCA::Provider::Context::~Context()'
    C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/build/aes-cmac/c_5271e7446ab6e7cb/aes_cmac_exe/armv5/udeb/moc_qca_cert.o:(.rodata+0x84): undefined reference to QCA::KeyLoader::~KeyLoader()' C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/build/aes-cmac/c_5271e7446ab6e7cb/aes_cmac_exe/armv5/udeb/moc_qca_cert.o:(.rodata+0x88): undefined reference toQCA::KeyLoader::~KeyLoader()'
    collect2: ld returned 1 exit status

    sbs : warnings: 10
    sbs : errors: 2

    built 'gcce_udeb'

    Run time 12 seconds

    sbs: build log in C:\QtSDK\Symbian\SDKs\Symbian3Qt463\epoc32\build\Makefile.2011-10-20-14-59-35.13-5544.log

    FAILED linkandpostlink for gcce_udeb: epoc32\release\armv5\udeb\aes_cmac.exe
    mmp: aes-cmac_0xE0e5b9d7.mmp
    mingw32-make[1]: *** [C:/QtSDK/Symbian/SDKs/Symbian3Qt463/epoc32/release/armv5/udeb/aes_cmac.exe] Error 1
    sbs: error: The make-engine exited with errors.
    C:\QtSDK\Symbian\SDKs\Symbian3Qt463\epoc32\tools\make.exe: *** [debug-gcce] Error 1
    C:\QtSDK\Symbian\SDKs\Symbian3Qt463\epoc32\tools\make.exe: Leaving directory `C:/Users/raymondchan/Downloads/qca-2.0.3.tar/qca-2.0.3/qca-2.0.3/examples/aes-cmac'
    The process "C:\QtSDK\Symbian\SDKs\Symbian3Qt463\epoc32\tools\make.exe" exited with code 2.
    Error while building project aes-cmac (target: Symbian Device)
    When executing build step 'Make'@



  • I have solve the qca on Symbian problem. But now i can't build the qca-ossl for symbian.... >_<



  • I have successfully used openssl with Qt in Symbian platform. And OpenSSL is ported to Symbian. But it is a C Library, that means you have to deal with char to QString and vice versa. You can try that.



  • @MagicR how did you be able to run it on symbian, I am facing the same problem now


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.