Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. Error: PKG file does not exist, 'sis' and 'installer_sis' target are only supported for executables or projects with DEPLOYMENT statement
Forum Updated to NodeBB v4.3 + New Features

Error: PKG file does not exist, 'sis' and 'installer_sis' target are only supported for executables or projects with DEPLOYMENT statement

Scheduled Pinned Locked Moved Mobile and Embedded
9 Posts 3 Posters 6.0k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • U Offline
    U Offline
    unni
    wrote on last edited by
    #1

    Hi,
    I was trying to run the 'spectrum' demo available under 'C:\NokiaQtSDK\Demos\4.6\spectrum'. However, I get this error when I try to build:

    Makefile:138: error: PKG file does not exist, 'sis' and 'installer_sis' target are only supported for executables or projects with DEPLOYMENT statement. Stop.

    What could I be doing wrong? Please note that instead of building the demo from the above path, I copied the complete 'spectrum' folder to C:\NokiaQtSDKProjects\spectrum path.

    1 Reply Last reply
    0
    • T Offline
      T Offline
      tobias.hunger
      wrote on last edited by
      #2

      Looks like the demo you are trying to build does not support symbian.

      You will need to add that support. The most straight forward way is probably to set up a symbian project using Qt Creator's mobile application wizard and then copying all the symbian specific lines from the generated .pro-file over into the demo's .pro-file.

      This will most likely need some additional tweaking (filenames, etc. are bound to be different), but it should at least provide you with a guideline to follow.

      PS: Patches are welcome:-)

      1 Reply Last reply
      0
      • U Offline
        U Offline
        unni
        wrote on last edited by
        #3

        There are multiple .pro files in this folder. In all of them, I was able to see the word 'symbian'. For example, in the main .pro file, the following lines were present:

        @symbian {
        # Create a 'make sis' rule which can be run from the top-level

        include($$QT_SOURCE_TREE/demos/symbianpkgrules.pri)
        
        # UID for the SIS file
        TARGET.UID3 = 0xA000E402
        

        }@

        I am not sure what this means since I am totally new to Qt itself. I haven't tried editing the files as you suggested because of this.

        Also, a Google search took me to this "blog":http://labs.qt.nokia.com/2010/05/18/qtmultimedia-in-action-a-spectrum-analyser/#comment-7455 where somebody reported the same error. However, it seem to have got resolved automatically for him!

        1 Reply Last reply
        0
        • U Offline
          U Offline
          unni
          wrote on last edited by
          #4

          I think it already has the UID entry. I am posting the contents of the .pro files (there are 2 .pro files in this) below:

          1. Contents of spectrum. pro

          @include(spectrum.pri)

          TEMPLATE = subdirs

          Ensure that library is built before application

          CONFIG += ordered

          !contains(DEFINES, DISABLE_FFT) {
          SUBDIRS += 3rdparty/fftreal
          }

          SUBDIRS += app

          TARGET = spectrum

          symbian {
          # Create a 'make sis' rule which can be run from the top-level

          include($$QT_SOURCE_TREE/demos/symbianpkgrules.pri)
          
          # UID for the SIS file
          TARGET.UID3 = 0xA000E402
          

          }

          sources.files = README.txt spectrum.pri spectrum.pro TODO.txt
          sources.path = $$[QT_INSTALL_DEMOS]/spectrum
          INSTALLS += sources
          @

          1. Contents of app.pro

          @include(../spectrum.pri)

          static: error(This application cannot be statically linked to the fftreal library)

          TEMPLATE = app

          TARGET = spectrum

          QT += multimedia

          SOURCES += main.cpp \

          HEADERS += engine.h \

          fftreal_dir = ../3rdparty/fftreal

          INCLUDEPATH += $${fftreal_dir}

          RESOURCES = spectrum.qrc

          symbian {
          # Platform security capability required to record audio on Symbian
          TARGET.CAPABILITY = UserEnvironment

          # Provide unique ID for the generated binary, required by Symbian OS
          TARGET.UID3 = 0xA000E402
          

          }

          Dynamic linkage against FFTReal DLL

          !contains(DEFINES, DISABLE_FFT) {
          symbian {
          # Must explicitly add the .dll suffix to ensure dynamic linkage
          LIBS += -lfftreal.dll
          QMAKE_LIBDIR += $${fftreal_dir}
          } else {
          macx {
          # Link to fftreal framework
          LIBS += -F$${fftreal_dir}
          LIBS += -framework fftreal
          } else {
          LIBS += -L..
          LIBS += -lfftreal
          }
          }
          }

          Install

          sources.files = $$SOURCES $$HEADERS $$RESOURCES app.pro
          sources.path = $$[QT_INSTALL_DEMOS]/spectrum/app
          images.files += images/record.png images/settings.png
          images.path = $$[QT_INSTALL_DEMOS]/spectrum/app/images
          INSTALLS += sources images

          Deployment

          symbian {
          include($$QT_SOURCE_TREE/demos/symbianpkgrules.pri)

          !contains(DEFINES, DISABLE_FFT) {
              # Include FFTReal DLL in the SIS file
              fftreal.sources = ../fftreal.dll
              fftreal.path = !:/sys/bin
              DEPLOYMENT += fftreal
          }
          

          } else {
          macx {
          # Specify directory in which to create spectrum.app bundle
          DESTDIR = ..

              !contains(DEFINES, DISABLE_FFT) {
                  # Relocate fftreal.framework into spectrum.app bundle
                  framework_dir = ../spectrum.app/Contents/Frameworks
                  framework_name = fftreal.framework/Versions/1/fftreal
                  QMAKE_POST_LINK = \
                      mkdir -p $${framework_dir} &&\
                      rm -rf $${framework_dir}/fftreal.framework &&\
                      cp -R $${fftreal_dir}/fftreal.framework $${framework_dir} &&\
                      install_name_tool -id @executable_path/../Frameworks/$${framework_name} \
                                        $${framework_dir}/$${framework_name} &&\
                      install_name_tool -change $${framework_name} \
                                        @executable_path/../Frameworks/$${framework_name} \
                                        ../spectrum.app/Contents/MacOS/spectrum
              }
          } else {
              # Specify directory in which to create spectrum application
              DESTDIR = ..
          
              unix: {
                  # Provide relative path from application to fftreal library
                  QMAKE_LFLAGS += -Wl,--rpath=\\\$\$ORIGIN
              }
          }
          

          }
          @

          1 Reply Last reply
          0
          • U Offline
            U Offline
            unni
            wrote on last edited by
            #5

            :) Why OMG? Because I posted the completed file contents here?!

            I was actually creating Forum Nokia account and logged in to check the activation mail when I saw your reply. I will post there this question and will update here.

            1 Reply Last reply
            0
            • X Offline
              X Offline
              xsacha
              wrote on last edited by
              #6

              It's only a FFA for tamhanna. He's just spamming. He had to write a short sentence to pretend he shouldn't be banned.

              I think the problem is due to you relocating the source dir. Does it work when you compile it in its original location?

              The PRO file refers to a lot of relative dirs that are now dead ends. See the ones with "../" in them?

              • Sacha
              1 Reply Last reply
              0
              • X Offline
                X Offline
                xsacha
                wrote on last edited by
                #7

                [quote author="tamhanna" date="1291484811"]Could you also show us the pri files?[/quote]
                include($$QT_SOURCE_TREE/demos/symbianpkgrules.pri)

                Comes with your SDK.

                include(../spectrum.pri)

                Comes with the app, which is also in your SDK.

                [quote author="tamhanna" date="1291484811"]MHO, dead path errors are shown as such.[/quote]
                Not in my experience :(

                • Sacha
                1 Reply Last reply
                0
                • U Offline
                  U Offline
                  unni
                  wrote on last edited by
                  #8

                  These are the contents of the .pri files:

                  1. spectrum.pri

                  @# The following macros allow certain features and debugging output

                  to be disabled / enabled at compile time.

                  Debug output from spectrum calculation

                  DEFINES += LOG_SPECTRUMANALYSER

                  Debug output from waveform generation

                  #DEFINES += LOG_WAVEFORM

                  Debug output from engine

                  DEFINES += LOG_ENGINE

                  Dump input data to spectrum analyer, plus artefact data files

                  #DEFINES += DUMP_SPECTRUMANALYSER

                  Dump captured audio data

                  #DEFINES += DUMP_CAPTURED_AUDIO

                  Disable calculation of level

                  #DEFINES += DISABLE_LEVEL

                  Disable calculation of frequency spectrum

                  If this macro is defined, the FFTReal DLL will not be built

                  #DEFINES += DISABLE_FFT

                  Disables rendering of the waveform

                  #DEFINES += DISABLE_WAVEFORM

                  If defined, superimpose the progress bar on the waveform

                  DEFINES += SUPERIMPOSE_PROGRESS_ON_WAVEFORM

                  Perform spectrum analysis calculation in a separate thread

                  DEFINES += SPECTRUM_ANALYSER_SEPARATE_THREAD

                  Suppress warnings about strncpy potentially being unsafe, emitted by MSVC

                  win32: DEFINES += _CRT_SECURE_NO_WARNINGS

                  @

                  1. symbianpkgrules.pri

                  @!symbian: error(Only include this file for Symbian platforms)

                  RSS_RULES ="group_name="QtDemos";"

                  vendorinfo =
                  "; Localised Vendor name"
                  "%{"Nokia, Qt"}"
                  " "
                  "; Unique Vendor name"
                  ":"Nokia, Qt""
                  " "

                  demos_deployment.pkg_prerules += vendorinfo
                  DEPLOYMENT += demos_deployment

                  isEmpty(ICON):ICON = $$QT_SOURCE_TREE/src/s60installs/qt.svg
                  @

                  I tired to run the project directly from its original path. Even then, it gave me the error. Please note that it runs properly with Qt Simulator irrespective of the path.

                  1 Reply Last reply
                  0
                  • U Offline
                    U Offline
                    unni
                    wrote on last edited by
                    #9

                    Problem solved by using Qt 4.7.1 for Symbian.

                    The following posts helped me in finding the reason and for setting up Qt 4.7.1:

                    [QUOTE]http://bugreports.qt.nokia.com/browse/QTBUG-5312?focusedCommentId=135858#comment-135858[/QUOTE]
                    [QUOTE]http://labs.qt.nokia.com/2010/12/12/start-with-qt-4-7-for-symbian-today/#more-2740[/QUOTE]

                    1 Reply Last reply
                    0

                    • Login

                    • Login or register to search.
                    • First post
                      Last post
                    0
                    • Categories
                    • Recent
                    • Tags
                    • Popular
                    • Users
                    • Groups
                    • Search
                    • Get Qt Extensions
                    • Unsolved