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:
- git clone "link to github of system-settings app"
- enter directory of newly created system-settings app
- 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
clickableas it is not a
.debso 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 https://sdk-images.ubports.com
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 https://sdk-images.ubports.com/releases, 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
crossbuilderdoes 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
debbut change the second copy to be
deb-srcinstead, then run
sudo apt-get build-dep ubuntu-system-settingsto 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
./builddirectory 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!