UBports Robot Logo UBports Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    error building lomiri calculator app

    Scheduled Pinned Locked Moved Unsolved Support
    34 Posts 3 Posters 4.1k Views 2 Watching
    Loading More Posts
    • 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.
      • N Offline
        nibzy26
        last edited by nibzy26

        Hi Folks,
        I am on ubuntu 20.4 PC and have clickable 7.12.3 installed .
        My phone is not attached to my PC.
        I cloned the lomiri calculator app from gitlab and did
        clickable build --libs --debug

        The error I got was "no libraries defined"

        CLICKABLE_FRAMEWORK=ubuntu-sdk-20.04 clickable build --libs --debug
        v8.0.0 of clickable is available, update to get the latest features and improvements!
        No libraries defined.

        then i skipped the --libs and just used clickable build --debug
        this time it was working fine but at the end i got this error
        uccessfully built package in './calculator.ubports_4.0.1_all.click'.
        Running review on /home/nsyed/calc/lomiri-calculator-app/build/all/app/calculator.ubports_4.0.1_all.click
        Errors

        • lint:migrations_present
          (NEEDS REVIEW) 'migrations' not allowed
          /home/nsyed/calc/lomiri-calculator-app/build/all/app/calculator.ubports_4.0.1_all.click: FAIL
          Command exited with non-zero exit status 2, see above for details. This is most likely not a problem with Clickable.

        How to fix this error please.

        arubislanderA 1 Reply Last reply Reply Quote 0
        • arubislanderA Offline
          arubislander @nibzy26
          last edited by arubislander

          @nibzy26 you need to instruct clickable to skip the reviewing step check the clickable documentation on how to do that.

          πŸ‡¦πŸ‡Ό πŸ‡³πŸ‡± πŸ‡ΊπŸ‡Έ πŸ‡ͺπŸ‡Έ
          Happily running Ubuntu Touch
          Google Pixel 3a (20.04 DEV)
          JingPad (24.04 preview)
          Meizu Pro 5 (16.04 DEV)

          N 1 Reply Last reply Reply Quote 0
          • N Offline
            nibzy26 @arubislander
            last edited by

            @arubislander Thanks
            i disabled the review now I can see the .click package built.
            After building calculator package Now I am doing changes in main lomiri repo. ..development/core/lomiri.git
            Questions:
            1 . Can we build a deb package with it. I mean how are we going to distribute our built packages to other people so that they can install on their phones .
            2 . Making significant gui changes like adding animations fancy butons and visual effects seem difficult by just editing qml files inside lomiri src as it takes a lot of time.
            So I was wondering if we can move just the qml/c++ source files to another qml visual tool like QML designer , make changes there, and then move the src files back to lomiri for building the packages.
            I hope i am making sense as I want to see the Live GUI update while editing the qml src files .This makes it quicker compared with making changes in lomiri src within clickable/ide environment and if we want to see our changes we have to build again and run the emulation which is time consuming.

            Please advise

            thanks

            lduboeufL 1 Reply Last reply Reply Quote 0
            • N Offline
              nibzy26
              last edited by

              Another Issue:
              I am trying to build the lomiri .git repo
              The command
              syed@nsyed-HP-Laptop-15-bs1xx:~/lomiri$ CLICKABLE_FRAMEWORK=ubuntu-sdk-20.04 clickable build --libs --debug

              is giving error like
              [ 48%] Building CXX object tests/plugins/AccountsService/CMakeFiles/mock-server.dir/server.cpp.o
              [ 48%] Building CXX object tests/plugins/AccountsService/CMakeFiles/mock-server.dir/AccountsServer.cpp.o
              [ 48%] Building CXX object tests/plugins/AccountsService/CMakeFiles/mock-server.dir/PropertiesServer.cpp.o
              [ 48%] Building CXX object tests/plugins/AccountsService/CMakeFiles/mock-server.dir/LscServer.cpp.o
              [ 48%] Linking CXX shared module libMockWizard-qml.so
              [ 48%] Built target MockWizard-qml
              [ 48%] Linking CXX shared library libFakeUtils-qml.so
              [ 48%] Built target FakeUtils-qml
              [ 48%] Linking CXX executable mock-server
              [ 48%] Built target mock-server
              make: *** [Makefile:141: all] Error 2

              lduboeufL 1 Reply Last reply Reply Quote 0
              • lduboeufL Offline
                lduboeuf @nibzy26
                last edited by lduboeuf

                @nibzy26 said in error building lomiri calculator app:

                @arubislander Thanks
                i disabled the review now I can see the .click package built.
                After building calculator package Now I am doing changes in main lomiri repo. ..development/core/lomiri.git
                Questions:
                1 . Can we build a deb package with it. I mean how are we going to distribute our built packages to other people so that they can install on their phones .

                Yes, haven't you read the Readme ?( note that some path have changed since, it needs updating ) : https://gitlab.com/ubports/development/core/lomiri
                If you want to share your progress, it could be done via a Merge Request in Lomiri repo, users then will able to install it locally via e.g for MR 72 : ubports-qa install focal_-_PR_lomiri_72

                2 . Making significant gui changes like adding animations fancy butons and visual effects seem difficult by just editing qml files inside lomiri src as it takes a lot of time.
                So I was wondering if we can move just the qml/c++ source files to another qml visual tool like QML designer , make changes there, and then move the src files back to lomiri for building the packages.
                I hope i am making sense as I want to see the Live GUI update while editing the qml src files .This makes it quicker compared with making changes in lomiri src within clickable/ide environment and if we want to see our changes we have to build again and run the emulation which is time consuming.

                Lomiri is not a classic app, hundreds of component needed, it will be hard to make them work with a designer. A way to test quite "quickly" your change can be done with the helpers ( see Readme, or demo here: https://www.youtube.com/watch?v=GgV8z0IsYzY&t=2s , previous one https://youtu.be/sejOiSEv1Vk )

                Please advise

                thanks

                1 Reply Last reply Reply Quote 0
                • lduboeufL Offline
                  lduboeuf @nibzy26
                  last edited by

                  @nibzy26 said in error building lomiri calculator app:

                  Another Issue:
                  I am trying to build the lomiri .git repo
                  The command
                  syed@nsyed-HP-Laptop-15-bs1xx:~/lomiri$ CLICKABLE_FRAMEWORK=ubuntu-sdk-20.04 clickable build --libs --debug

                  is giving error like
                  [ 48%] Building CXX object tests/plugins/AccountsService/CMakeFiles/mock-server.dir/server.cpp.o
                  [ 48%] Building CXX object tests/plugins/AccountsService/CMakeFiles/mock-server.dir/AccountsServer.cpp.o
                  [ 48%] Building CXX object tests/plugins/AccountsService/CMakeFiles/mock-server.dir/PropertiesServer.cpp.o
                  [ 48%] Building CXX object tests/plugins/AccountsService/CMakeFiles/mock-server.dir/LscServer.cpp.o
                  [ 48%] Linking CXX shared module libMockWizard-qml.so
                  [ 48%] Built target MockWizard-qml
                  [ 48%] Linking CXX shared library libFakeUtils-qml.so
                  [ 48%] Built target FakeUtils-qml
                  [ 48%] Linking CXX executable mock-server
                  [ 48%] Built target mock-server
                  make: *** [Makefile:141: all] Error 2

                  humm error is not clear, full log needed

                  1 Reply Last reply Reply Quote 0
                  • N Offline
                    nibzy26
                    last edited by

                    Actually the complete output is quite long so was looking for an option to attach file here .is there any option here.
                    However with the shell in qt creator ide i was able to do make -j8 successfully and the build and run button also work fine here .
                    but the clickable commands on the terminal dont work

                    1 Reply Last reply Reply Quote 0
                    • N Offline
                      nibzy26
                      last edited by

                      CLICKABLE_FRAMEWORK=ubuntu-sdk-20.04 clickable ide 'cd build/x86_64-linux-gnu/unity8/ && make tryShell'
                      v8.0.0 of clickable is available, update to get the latest features and improvements!
                      This project does not have a required Clickable version configured ("clickable_minimum_required"). See https://clickable-ut.dev/en/dev/migration.html for details about migration to Clickable 7 if you run into issues.
                      DEPRECATED: The legacy builder is deprecated and will be removed in a future release.
                      Install the buildx component to build images with BuildKit:
                      https://docs.docker.com/go/buildx/

                      Sending build context to Docker daemon 10.75kB
                      Step 1/21 : FROM docker.io/clickable/amd64-20.04-amd64-ide
                      ---> ace0e42e11c4
                      Step 2/21 : ARG GOPATH="/home/nsyed/.clickable/go"
                      ---> Using cache
                      ---> 391b91fb709a
                      Step 3/21 : ARG CMAKE_PREFIX_PATH="/home/nsyed/lomiri/build/x86_64-linux-gnu/unity8/install"
                      ---> Using cache
                      ---> 16b2a9f2ef1d
                      Step 4/21 : ARG SDK_FRAMEWORK="ubuntu-sdk-20.04"
                      ---> Using cache
                      ---> 62ed90b01da2
                      Step 5/21 : ARG QT_VERSION="5.12"
                      ---> Using cache
                      ---> eb34b1c3bb75
                      Step 6/21 : ARG ARCH="amd64"
                      ---> Using cache
                      ---> 5924fb6ccc8c
                      Step 7/21 : ARG ARCH_TRIPLET="x86_64-linux-gnu"
                      ---> Using cache
                      ---> e97c9eb89565
                      Step 8/21 : ARG ARCH_RUST="x86_64-unknown-linux-gnu"
                      ---> Using cache
                      ---> 39d6a0eb780d
                      Step 9/21 : ARG NUM_PROCS="8"
                      ---> Using cache
                      ---> 16fbbc08cb7d
                      Step 10/21 : ARG ROOT="/home/nsyed/lomiri"
                      ---> Using cache
                      ---> a9bd83171c90
                      Step 11/21 : ARG BUILD_DIR="/home/nsyed/lomiri/build/x86_64-linux-gnu/app"
                      ---> Using cache
                      ---> 5484f586d218
                      Step 12/21 : ARG SRC_DIR="/home/nsyed/lomiri"
                      ---> Using cache
                      ---> d060804cec53
                      Step 13/21 : ARG INSTALL_DIR="/home/nsyed/lomiri/build/x86_64-linux-gnu/app/install"
                      ---> Using cache
                      ---> 346cf119dfad
                      Step 14/21 : ARG CLICK_LD_LIBRARY_PATH="/home/nsyed/lomiri/build/x86_64-linux-gnu/app/install/lib/x86_64-linux-gnu"
                      ---> Using cache
                      ---> b7e50ed119b7
                      Step 15/21 : ARG CLICK_PATH="/home/nsyed/lomiri/build/x86_64-linux-gnu/app/install/lib/x86_64-linux-gnu/bin"
                      ---> Using cache
                      ---> a5770c43628e
                      Step 16/21 : ARG CLICK_QML2_IMPORT_PATH="/home/nsyed/lomiri/build/x86_64-linux-gnu/app/install/lib/x86_64-linux-gnu"
                      ---> Using cache
                      ---> b6d24ccea76b
                      Step 17/21 : ARG UNITY8_LIB_INSTALL_DIR="/home/nsyed/lomiri/build/x86_64-linux-gnu/unity8/install"
                      ---> Using cache
                      ---> c15347ea953f
                      Step 18/21 : ARG UNITY8_LIB_BUILD_DIR="/home/nsyed/lomiri/build/x86_64-linux-gnu/unity8"
                      ---> Using cache
                      ---> 261e033514db
                      Step 19/21 : ARG UNITY8_LIB_SRC_DIR="/home/nsyed/lomiri"
                      ---> Using cache
                      ---> a6bd1587f2e7
                      Step 20/21 : RUN echo set debconf/frontend Noninteractive | debconf-communicate && echo set debconf/priority critical | debconf-communicate
                      ---> Using cache
                      ---> 12475d2b34e0
                      Step 21/21 : RUN apt-get update && apt-get install -y --force-yes --no-install-recommends android-headers:amd64 cmake:amd64 cmake-extras:amd64 dbus-test-runner:amd64 debhelper:amd64 dh-apparmor:amd64 doxyqml:amd64 g++:native gdb:amd64 graphviz:amd64 lomiri-schemas:amd64 libandroid-properties-dev:amd64 liblomiri-connectivity-qt1-dev:amd64 libevdev-dev:amd64 libgeonames-dev:amd64 libgl1-mesa-dev:amd64 libgl1-mesa-dri:amd64 libgles2-mesa-dev:amd64 libglib2.0-dev:amd64 libgnome-desktop-3-dev:amd64 libgsettings-qt-dev:amd64 libhardware-dev:amd64 liblightdm-qt5-3-dev:amd64 libpam0g-dev:amd64 libpulse-dev:amd64 libqmenumodel-dev:amd64 libqt5sql5-sqlite:amd64 libqt5svg5-dev:amd64 libqt5xmlpatterns5-dev:amd64 libqtdbusmock1-dev:amd64 libqtdbustest1-dev:amd64 liblomirisystemsettings-dev:amd64 libubuntu-app-launch3-dev:amd64 liblomiri-download-manager-common-dev:amd64 liblomirigestures5-dev:amd64 liblomirigestures5-private-dev:amd64 libudev-dev:amd64 liblomiri-api-dev:amd64 libusermetricsoutput1-dev:amd64 libx11-dev:amd64 libxcb1-dev:amd64 libxi-dev:amd64 pkg-config:amd64 python3-all:any python3-setuptools:native qml-module-qt-labs-folderlistmodel:amd64 qml-module-qt-labs-settings:amd64 qml-module-qtmultimedia:amd64 qml-module-qtqml-statemachine:amd64 qml-module-qtquick-layouts:amd64 qml-module-qtquick-xmllistmodel:amd64 qml-module-qtquick2:amd64 qml-module-qttest:amd64 qml-module-lomiri-components:amd64 qml-module-lomiri-layouts:amd64 qml-module-lomiri-settings-components:amd64 qml-module-lomiri-test:amd64 qtbase5-dev:amd64 qtbase5-dev-tools:amd64 qtbase5-private-dev:amd64 qtdbustest-runner:amd64 qtdeclarative5-dev:amd64 qtdeclarative5-dev-tools:amd64 qtdeclarative5-private-dev:amd64 qtdeclarative5-ubuntu-content1:amd64 fonts-ubuntu:amd64 lomiri-wallpapers:amd64 xvfb:amd64 qtmir:amd64 qml-module-qtmir:amd64 libqtmirserver-dev:amd64 liblomiri-app-launch-dev:amd64 libdeviceinfo-dev:amd64 mirtest-dev:amd64 qml-module-lomiri-settings-menus:amd64 && apt-get clean
                      ---> Using cache
                      ---> 2f4ad9f8851c
                      Successfully built 2f4ad9f8851c
                      Successfully tagged clickable/amd64-20.04-amd64-ide-7867386c-1c3d-4950-a855-ef4e04b42659:latest
                      non-network local connections being added to access control list
                      Mounting device home to /home/nsyed/.clickable/home
                      [ 0%] Automatic MOC for target lomiri-private
                      [ 0%] Built target lomiri-private_autogen
                      [100%] Built target lomiri-private
                      [100%] Automatic MOC for target uqmlscene
                      [100%] Built target uqmlscene_autogen
                      [100%] Built target uqmlscene
                      QML debugging is enabled. Only use this in a safe environment.
                      QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-nsyed'
                      QML Debugger: Waiting for connection on port 3768...
                      file:///home/nsyed/lomiri/tests/qmltests/./tst_Shell.qml:21 module "AccountsService" plugin "MockAccountsService-qml" not found

                      Unable to register DBus object "/com/lomiri/Shell/Debugging"
                      make[3]: *** [tests/qmltests/CMakeFiles/tryShell.dir/build.make:57: tests/qmltests/CMakeFiles/tryShell] Error 255
                      make[2]: *** [CMakeFiles/Makefile2:16161: tests/qmltests/CMakeFiles/tryShell.dir/all] Error 2
                      make[1]: *** [CMakeFiles/Makefile2:16168: tests/qmltests/CMakeFiles/tryShell.dir/rule] Error 2
                      make: *** [Makefile:6298: tryShell] Error 2
                      Command exited with non-zero exit status 2, see above for details. This is most likely not a problem with Clickable.
                      nsyed@nsyed-HP-Laptop-15-bs1xx:~/lomiri$

                      lduboeufL 1 Reply Last reply Reply Quote 0
                      • lduboeufL Offline
                        lduboeuf @nibzy26
                        last edited by lduboeuf

                        @nibzy26 said in error building lomiri calculator app:

                        Ok i see, i did a MR for that https://gitlab.com/ubports/development/core/lomiri/-/merge_requests/110
                        Waiting for merge...,

                        meanwhile just see what i did in CMakeLists.txt ( just comment the lines below "# enable QML debugging"

                        N 1 Reply Last reply Reply Quote 0
                        • N Offline
                          nibzy26 @lduboeuf
                          last edited by nibzy26

                          @lduboeuf I disabled the lines as you mentioned in the lomiri/CMakeLists.txt like

                          enable QML debugging

                          #string(TOLOWER "${CMAKE_BUILD_TYPE}" cmake_build_type_lower) # Build types should always be lowercase but sometimes they are not.
                          #if(cmake_build_type_lower MATCHES "debug")
                          #add_definitions(-DQT_QML_DEBUG)
                          #endif()
                          and got the error
                          /home/nsyed/t2/lomiri/plugins/WindowManager/Screen.cpp:158: warning: enumeration value 'DSI' not handled in switch [-Wswitch]
                          /home/nsyed/t2/lomiri/plugins/WindowManager/Screen.cpp:158: warning: enumeration value 'DPI' not handled in switch [-Wswitch]
                          πŸ‘Ž error: CMakeFiles/test-accountsservice.dir///__/plugins/AccountsService/AccountsService.cpp.o: in function __static_initialization_and_destruction_0(int, int)': /usr/include/x86_64-linux-gnu/qt5/QtQml/qqmldebug.h:79: error: undefined reference to QQmlDebuggingEnabler::QQmlDebuggingEnabler(bool)'
                          πŸ‘Ž error: collect2: error: ld returned 1 exit status
                          πŸ‘Ž error: [tests/plugins/AccountsService/CMakeFiles/test-accountsservice.dir/build.make:132: tests/plugins/AccountsService/test-accountsservice] Error 1

                          lduboeufL 1 Reply Last reply Reply Quote 0
                          • lduboeufL Offline
                            lduboeuf @nibzy26
                            last edited by

                            @nibzy26 did you clean the build folder in case ?
                            Do you still try to build with clickable build --libs ( try remove --debug)

                            N 1 Reply Last reply Reply Quote 0
                            • N Offline
                              nibzy26 @lduboeuf
                              last edited by

                              @lduboeuf Thanks

                              --build without --debug worked okay

                              N 1 Reply Last reply Reply Quote 0
                              • N Offline
                                nibzy26 @nibzy26
                                last edited by

                                Ok now trying to completely change gui look of the lomiri calculator app. I have the lomiri-calculator folder open in VSS code and i am making changes there but I cant see my changes when i run clickable desktop command
                                my sequence of commads is

                                1. edit qml files in VSS code
                                2. run clickable build
                                3. clickable desktop

                                I dont see my changes any idea why ?

                                Also how can i see my changes quickly without building and running desktop commands as these commands take time

                                Thanks

                                lduboeufL 1 Reply Last reply Reply Quote 0
                                • lduboeufL Offline
                                  lduboeuf @nibzy26
                                  last edited by lduboeuf

                                  @nibzy26 said in error building lomiri calculator app:

                                  Ok now trying to completely change gui look of the lomiri calculator app. I have the lomiri-calculator folder open in VSS code and i am making changes there but I cant see my changes when i run clickable desktop command
                                  my sequence of commads is

                                  1. edit qml files in VSS code
                                  2. run clickable build
                                  3. clickable desktop

                                  I dont see my changes any idea why ?

                                  Also how can i see my changes quickly without building and running desktop commands as these commands take time

                                  Thanks

                                  humm, no need to run "clickable build" + "desktop", "clickable desktop" will do both.
                                  if you don't see your change it could be that you are modifying the code from the build folder instead of the source ?
                                  there is a Live Reload tool now if the app you are trying to modify doesn't contain c++/python backend : clickable desktop --qmllive

                                  N 1 Reply Last reply Reply Quote 0
                                  • N Offline
                                    nibzy26 @lduboeuf
                                    last edited by

                                    Hi,

                                    In My calculator app I want to add an image as background to a rectangle but it cannot fing image location and says
                                    QML QQuickImage: Cannot open: file:///home/nsyed/calc/lomiri-calculator-app/build/all/app/install/share/qml/ui/backspace-outline.png

                                    My Code:
                                    Rectangle {
                                    visible: (role == "button")
                                    height: parent.height
                                    width: height
                                    anchors.centerIn: parent

                                        border.color: "red"
                                        
                                     
                                        Image {
                                            visible: true
                                            source: "backspace-outline.png"
                                            anchors.fill: parent
                                            fillMode: Image.Stretch // Adjust this as needed
                                        }   
                                       
                                    }
                                    

                                    Question: where I should put my png or svg files ?
                                    2. should i use svg or png ?
                                    3. I think build folder is not the place to put my image .where should i put my image file then ?

                                    Please advise

                                    Thanks

                                    arubislanderA 1 Reply Last reply Reply Quote 0
                                    • arubislanderA Offline
                                      arubislander @nibzy26
                                      last edited by arubislander

                                      @nibzy26 where is your image file, relative to the qml file you are referencing it from?

                                      πŸ‡¦πŸ‡Ό πŸ‡³πŸ‡± πŸ‡ΊπŸ‡Έ πŸ‡ͺπŸ‡Έ
                                      Happily running Ubuntu Touch
                                      Google Pixel 3a (20.04 DEV)
                                      JingPad (24.04 preview)
                                      Meizu Pro 5 (16.04 DEV)

                                      N 1 Reply Last reply Reply Quote 0
                                      • N Offline
                                        nibzy26 @arubislander
                                        last edited by

                                        @arubislander
                                        Its in the same folder as qml file

                                        lduboeufL 1 Reply Last reply Reply Quote 0
                                        • lduboeufL Offline
                                          lduboeuf @nibzy26
                                          last edited by

                                          @nibzy26 said in error building lomiri calculator app:

                                          @arubislander
                                          Its in the same folder as qml file

                                          is that file present ? /home/nsyed/calc/lomiri-calculator-app/build/all/app/install/share/qml/ui/backspace-outline.png

                                          N 1 Reply Last reply Reply Quote 0
                                          • N Offline
                                            nibzy26 @lduboeuf
                                            last edited by nibzy26

                                            @lduboeuf
                                            yes I manually placed there but everytime it builds it firsts deletes all files in build folder and then builds
                                            I guess something wrong with my syntax

                                            I have tried placing it in the same folder with other qml files

                                            I have tried placing it in my home folder and set it as
                                            source: '/home/nsyed/backspace-outline.png'

                                            arubislanderA 1 Reply Last reply Reply Quote 0
                                            • arubislanderA Offline
                                              arubislander @nibzy26
                                              last edited by

                                              @nibzy26 placing it in the root of your home folder won't work, the app is not allowed to read the contents there.. Also you shouldn't need to be copying it anywhere manually.
                                              Do you have your project anywhere online?

                                              πŸ‡¦πŸ‡Ό πŸ‡³πŸ‡± πŸ‡ΊπŸ‡Έ πŸ‡ͺπŸ‡Έ
                                              Happily running Ubuntu Touch
                                              Google Pixel 3a (20.04 DEV)
                                              JingPad (24.04 preview)
                                              Meizu Pro 5 (16.04 DEV)

                                              N 1 Reply Last reply Reply Quote 0
                                              • First post
                                                Last post