Clickable: Errors during compilation of 'system-settings' app

  • Hi all, I'm trying to learn how to use clickable. I've got a Ubuntu 18.04 in a VM as development environment. Trying out one of the app-templates works perfectly. Now I'd like to compile the 'system-settings' app since I made a minor change to test something. What I do is:

    1. git clone "link to github of system-settings app"
    2. enter directory of newly created system-settings app
    3. clickable --vivid (since my phone is running UT 15.04 (r3))

    Then I get a bunch of cmake errors à la:

    -- checking for one of the modules 'upower-glib'
    CMake Error at /usr/share/cmake-3.0/Modules/FindPkgConfig.cmake:429 (message):
    None of the required 'upower-glib' found

    Every single one of them being a module that couldn't be found. Am I getting something horribly wrong? Does this app have to be compiled in another way? Or if not, how can I find and download the missing modules?

    Thanks a lot in advance for any help! 🙂

  • I don't think you can build the settings app with clickable as it is not a .click but a .deb so you should use crossbuilder to build it

  • @mymike Thanks a lot for your idea. While trying out crossbuilder I stumbled upon another problem, namely:

    Building ubuntu-system-settings for armhf and deploying to device.
    Creating LXD container ubuntu-system-settings-usdk-15-04-amd64-armhf-dev using ubports-sdk:ubuntu-sdk-15.04-amd64-armhf-dev.
    Error: Remote ubports-sdk exists as
    Creating ubuntu-system-settings-usdk-15-04-amd64-armhf-dev
    Error: Failed container creation: The requested image couldn't be found.

    It seems like the desired image couldn't be found and indeed, when visiting, the folder for vivid seems to be empty. Do you know if the image has been moved (hopefully not removed)?

    Thanks again for your help! 🙂

  • The vivid image was never on that server. Indeed, the current crossbuilder does not support Vivid; you could try using an older version, for example this one, but to be honest I'm not very optimistic about the chances of success: I haven't been working with Vivid since a long time.

  • Do you have Unity8 packages installed in this VM? If so, you can edit the list in /etc/apt/sources.list.d/ubports.list (IIRC, that's the file the install script creates), and duplicate the line within that starts with deb but change the second copy to be deb-src instead, then run apt-get update and sudo apt-get build-dep ubuntu-system-settings to install the build dependencies.

    Then you can simply run (mkdir -p build && cd build && cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release && make -j<your cpu core count assigned to the VM>) and you should end up with a build of system settings under the ./build directory inside the source tree, where you should be able to test your changes from.

  • Thanks a lot for your help @mardy and @dobey ! 🙂 The older version of crossbuilder seems not to work either, as you predicted @mardy. But since OTA-5 just got released I think I'll spare myself from setting up Unity8 (at least for the moment) and will just wait till I receive the update and then try to build for 16.04. Again a big thank you to both of you and have a nice day! 🙂

Log in to reply