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

    gcc 9.4 compiler in docker images

    Scheduled Pinned Locked Moved Unsolved Support
    11 Posts 3 Posters 828 Views 1 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.
      • ikozI Offline
        ikoz @oldpaint
        last edited by

        @oldpaint That's the default for Ubuntu 20.04, the new 24.04 images have gcc 13.

        May the source be with you

        O 1 Reply Last reply Reply Quote 0
        • O Offline
          oldpaint @ikoz
          last edited by

          @ikoz The current Botan cryptography library is version 3.9 and it requires gcc 11 or newer. So, I can't build it as part of my clickable project. I suppose I can pre-build it on my development box. Or, I can maybe use an older version of Botan that has reached end of life. Or, I can wait for Ubuntu Touch to move to a newer version. Any plans or schedule for that?

          O 1 Reply Last reply Reply Quote 0
          • O Offline
            oldpaint @oldpaint
            last edited by

            I see this: "Ubuntu Touch 24.04-1.0 is slated for release on 24 September 2025". Maybe I'll wait.

            J 1 Reply Last reply Reply Quote 0
            • J Offline
              johndoe @oldpaint
              last edited by

              @oldpaint I think it should already be possible to build your app for nobel. But you will probably need to update your clickable docker image first. Of cause you can also wait for nobel being stable.

              O 1 Reply Last reply Reply Quote 0
              • O Offline
                oldpaint @johndoe
                last edited by

                @johndoe Thanks. To update the docker images I think I need to add 'ubuntu-touch-24.04-1.x' to some configuration file under some heading and then run 'clickable update-images' optionally followed by 'clickable clean-images'. I cannot figure out what configuration file to change and under what heading I should add the new click foundation string. Nothing I do seems to update the docker images. So, I am stuck.

                J 2 Replies Last reply Reply Quote 0
                • J Offline
                  johndoe @oldpaint
                  last edited by johndoe

                  @oldpaint Please take a look at the .json files in your project. You have probably defined the framework there like "ubuntu-sdk-20.04" (it is possible that it is defined in more than one .json file). You probably need to replace the number with 24.04 or 24.04-1.0 (I am not sure, because I have not build for 24.04 jet).

                  Edit: The new framework name gets explained here: https://forums.ubports.com/topic/10899/status-update-on-ubuntu-touch-24.04-1.x-march-april-2025

                  You can also define the framework as a parameter, when running clickable: "clickable CLICKABLE_FRAMEWORK=ubuntu-sdk-20.04 build" (for example).
                  You will also need a new version of clickable (I think 8.4). The minimum clickable version is usually also defined in a .json file. I hope that maybe helps.

                  1 Reply Last reply Reply Quote 0
                  • J Offline
                    johndoe @oldpaint
                    last edited by johndoe

                    @oldpaint I think manifest.json, clickable.json and/or clickable.yaml, are the configuration files to look for. At least I get this from the documentation here: https://clickable-ut.dev/en/latest/usage.html

                    This also seems to be important: "The apparmor policy needs to match the framework. To let Clickable fill it, leave it empty or set it to @APPARMOR_POLICY@."

                    O 1 Reply Last reply Reply Quote 0
                    • O Offline
                      oldpaint @johndoe
                      last edited by oldpaint

                      @johndoe I added this line near the top of my project clickable.yaml:
                      framework: ubuntu-touch-24.04-1.x

                      I added a file [PROJECT_NAME].apparmor to my project directory with this content:
                      {
                      "policy_groups": [],
                      "policy_version": 2404.1
                      }

                      I thought I would start with the Botan library so I ran the command 'clickable build --libs --verbose' and that provoked a download of the correct docker container for my phone, arm64. I can't seem to provoke a download for the desktop docker container, amd64. I tried 'clickable desktop ...' but no joy.

                      The commands 'clickable update-images' and 'clickable clean-images' list the images but do nothing else for me. That was confusing for a while.

                      I think I need to clear the decks and start the project fresh instead of trying to modify the existing one.

                      J 2 Replies Last reply Reply Quote 1
                      • J Offline
                        johndoe @oldpaint
                        last edited by

                        This post is deleted!
                        1 Reply Last reply Reply Quote 0
                        • J Offline
                          johndoe @oldpaint
                          last edited by johndoe

                          @oldpaint said in gcc 9.4 compiler in docker images:

                          I thought I would start with the Botan library so I ran the command 'clickable build --libs --verbose' and that provoked a download of the correct docker container for my phone, arm64. I can't seem to provoke a download for the desktop docker container, amd64. I tried 'clickable desktop ...' but no joy.

                          You could try 'CLICKABLE_ARCH=amd64 clickable build --libs --verbose' or 'clickable build --arch amd64 --libs --verbose' in order to specify the architecture.

                          Your architecture should also be defined in your manifest.json file. (The app template should provide a manifest.json file by default. It is maybe under data/. You can read about it here: https://clickable-ut.dev/en/latest/usage.html )
                          The architecture will probably be whatever architecture is specified when executing clickable (likely arm64 by default).

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