Menu

BinaryUsage

Nikolaos Ftylitakis

Intro

As of now, QBluetoothZero LIbary can be used through a different procedure much simpler than compiling.

SVN contains a new folder called bin. In there you can find the library already compiled and ready to be used.

The library is now thought as a Shared Dll Library. It is installed once and can be used from multiple client programs without conflicts.

It looks good BUT it has some catches.

  • the binaries are __self signed __so only the basic Capabiliites are supported: LocalServices, NetworkServices, ReadUserData, UserEnvironment, WriteUserData, Location.
  • The UID of the binary comes from the protected range. This means that it is only for testing and personal use. There is no guaranty that the UID will not conflict with programs from other developers.
  • In case someone wants to use the binary for an application that will be placed in Ovi Store, the binary has to be rebuild using a UID that the developer got a publisher.

How to use

Step 1

Copy the contents of bin file ("epoc32" folder) in the "epoc32" folder of your Symbian SDK.

Step 2

Put the following lines in your .pro file:

symbian{
       INCLUDEPATH += /epoc32/include/QBluetoothZero
       LIBS += -lQBluetoothZero

       customrules.pkg_prerules  = \
    ";QBluetoothZero" \
    "@\"$(EPOCROOT)Epoc32/InstallToDevice/QBluetoothZero_selfsigned.sis\",(0xA003328D)"\
    " "

    DEPLOYMENT += customrules
}

In case you use Qt Creator, the following line:

"@\"$(EPOCROOT)Epoc32/InstallToDevice/QBluetoothZero_selfsigned.sis\",(0xA003328D)"\

must be changed into (just add a _$" character):

"@\"$$(EPOCROOT)Epoc32/InstallToDevice/QBluetoothZero_selfsigned.sis\",(0xA003328D)"\

Step 3

Compile your appllication.

How to create

I case someone wants to sign the binary or change anything these are the lines that have to be edited:

Step 1 (optional)

from

addFiles.sources = QBluetoothZero.dll

addFiles.path = :\sys\bin

to

addFiles.sources = QBluetoothZero.dll

addFiles.path = /sys/bin

Step 2

If using Carbide: Specify QBluetoothZero_template.pkg for the SIS builder.

  • Go under "Project" -> "Preferences" -> "Carbide.c++" -> "Build Configurations" and select the Active configuration you want.
  • Under SIS Builder tab press "Add" button
  • In the field PKG File press "Browse" and find the QBluetoothZero_template.pkg
  • Now you are ready to compile