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

HowTo: contributing to app development with crossbuilder

Scheduled Pinned Locked Moved App Development
51 Posts 8 Posters 13.3k 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.
    • M Offline
      mardy
      last edited by 17 Sept 2018, 06:46

      Yes, copying the folder from GutHub works as well 🙂

      About the logs, I need to see those relative to the first time the container is setup: you should delete all your crossbuilder containers, then run crossbuilder again (with the set -e option as well). Those logs will show all the packages being installed, and I'll hopefully understand why dch is not there. The logs you pasted seem to refer to a situation where the container had already been set up.

      M 1 Reply Last reply 17 Sept 2018, 17:09 Reply Quote 1
      • M Offline
        matteo @mardy
        last edited by matteo 17 Sept 2018, 17:09

        @mardy here what I have done:

        1. Previous lxd installation deleted with Synaptic (lxd and lxd-client packages);
        2. crossbuilder folder downloaded from https://github.com/ubports/crossbuilder;
        3. I checked that the crossbuilder file got the 'set -e' command at the beginning already provided; however I see that the 'set -x' part is no more there....should I add to the crossbuilder file or leave it as it is, with only the 'set -e' specification? Needless to say, I tried also adding both the commands at the same time but still the 'dch' error is thrown;
        4. Typed 'crossbuilder setup-lxd' to install the container dependencies.

        This is the output: https://paste.ubuntu.com/p/Jd4w6y4BYK/

        M 1 Reply Last reply 20 Sept 2018, 13:31 Reply Quote 0
        • M Offline
          matteo @matteo
          last edited by 20 Sept 2018, 13:31

          @mardy any suggestion? I know that you are probably busy but I'm stuck with that and really no clue how to fix this issue.

          Thank you.

          1 Reply Last reply Reply Quote 0
          • M Offline
            mardy
            last edited by 21 Sept 2018, 16:40

            Sorry @matteo, it's just that I don't read the forum everyday. 🙂

            Yes, indeed I meant that you need to add set -x
            The setup phase seems to be OK, I cannot spot any problems there. Now can you please try to create a new container and show the output?

            M 1 Reply Last reply 21 Sept 2018, 17:53 Reply Quote 0
            • M Offline
              matteo @mardy
              last edited by 21 Sept 2018, 17:53

              @mardy I know, sorry if I'm bothering you but this thing is driving me nuts...I feel this to be the last hurdle before to start helping pro-actively UBports, that's why I'm insisting 😉
              Here you go, with the latest output I produced trying to create the OSK container....always complaining about 'dch' missing:

              https://paste.ubuntu.com/p/8KTf8TjKVs/

              Hope you'll find a clue in here.

              Thank you mardy!

              1 Reply Last reply Reply Quote -1
              • M Offline
                mymike
                last edited by 21 Sept 2018, 20:52

                Hi, today I finally had another try with crosscompile.
                I got this in the setup https://paste.ubuntu.com/p/5KWj5j9HjQ/
                and this trying to execute the rotation-lock indicator https://paste.ubuntu.com/p/hDntZ43mRy/

                but what about merging this tool with clickable? it already creates working containers (with docker and not lxc) and I think it just need to add the code to build something that isn't a click package and to install it on the device. also you'll use a unique container ans save disk space. but idk, maybe it's just a silly suggestion...

                1 Reply Last reply Reply Quote 0
                • M Offline
                  mymike
                  last edited by 21 Sept 2018, 21:16

                  Oh, wait. I re-run crossbuilder and it has now a long log https://paste.ubuntu.com/p/vSxrr4K7Gn/ and it is complaining about some deps for indicator-display but idk if it's crossbuilder fault or it's indicator's...

                  M 1 Reply Last reply 22 Sept 2018, 08:56 Reply Quote 0
                  • M Offline
                    matteo @mymike
                    last edited by 22 Sept 2018, 08:56

                    @mymike Michele, would you mind trying to create a container also with the keyboard package cloning it from here as I already did before? I have had several errors (see previous outputs from me) and I'd like to see what's different from your output. Thanks.

                    P.S. what's your Desktop OS? Mine is Ubuntu 16.04.

                    M 1 Reply Last reply 24 Sept 2018, 07:49 Reply Quote 0
                    • L Offline
                      Luksus
                      last edited by 22 Sept 2018, 11:35

                      Just want to add my findings in trying to use crossbuilder:
                      Ubuntu 17.04 (32bit)

                      setup-lxd without zfs went well.
                      When trying to build with "crossbuilder --ubuntu=16.04" it stops with this error:
                      https://paste.ubuntu.com/p/YzNbHgGPpJ/

                      Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

                      M 1 Reply Last reply 22 Sept 2018, 16:12 Reply Quote 0
                      • M Offline
                        matteo @Luksus
                        last edited by matteo 22 Sept 2018, 16:12

                        @luksus Why is your output so short? Did you cut it up to the essential?
                        For the error which states 'no device' are you sure you connected your phone to your PC prior to send the crossbuilder command? A tip for you: once connected the device to your PC, you don't need to type the complete command but you just need to write 'crossbuilder' and the script will detect by itself the OS (16.04 or 15.04).

                        1 Reply Last reply Reply Quote 0
                        • M Offline
                          matteo
                          last edited by matteo 22 Sept 2018, 17:01

                          @mardy I think I made one step further. First I just realized that the -su: dch: command not found error is only thrown when I try to crossbuild again the keyboard package when it has been already created. If I wipe the container by lxc stop ubuntu-keyboard-usdk-16-04-amd64-armhf-dev and then lxc delete ubuntu-keyboard-usdk-16-04-amd64-armhf-dev and I crossbuild it at its location, therefore the Container is not connected to the Internet. error is generated.
                          Secondly, I dug into the crossbuilder script and I found that this error, for my case at least, is a fake error. In fact, if I type in the terminal lxc info ubuntu-keyboard-usdk-16-04-amd64-armhf-dev I got this output:
                          0_1537634303668_f6e0517d-ad5c-4197-90dd-20ff3d6897a9-image.png

                          As you can see the connection is actually available for the container (eth0: inet6).
                          However, running the script it is not detected because there is a typo in the concerned code rows:

                          0_1537634500834_98eed83b-11b5-4724-a0a3-9c88c63e27b3-image.png

                          If I get rid of the \b in grep -e "eth0.*inet\b" then the connection is correctly detected and the setup can move forward.
                          Moving forward I got new errors in fetching some repositories. I'm not sure if the crossbuilt succeeded this time; trying to make a small change locally to the keyboard package and crossbuilding it on my phone, it seems I'm not able to see any difference...maybe it's me and probably I touched something not graphically evident as I thought. I'll make other attempts before to be sure I'm not able yet to make crossbuilder to properly work.
                          The very latest output, if you want to help me to understand if the repositories fetching error is problematic and how to circumvent this, is the following: https://paste.ubuntu.com/p/5w78Gz2MJx/.

                          M 1 Reply Last reply 24 Sept 2018, 07:44 Reply Quote 0
                          • L Offline
                            Luksus
                            last edited by Luksus 22 Sept 2018, 18:01

                            @matteo : No I did not cut that output. I did not connect my device, because I thought its not necessary and it would proceed building anyway.
                            I thought the error is, that it does not find the requested image container at https://sdk-images.ubports.com.

                            Devices: BQ e4.5, Fairphone 2, Fairphone 3, Lenovo X605F, Pinephone, Moto Z2 Force, OnePlus5T

                            M M 2 Replies Last reply 24 Sept 2018, 07:41 Reply Quote 0
                            • M Offline
                              mymike @Luksus
                              last edited by 24 Sept 2018, 07:41

                              @luksus maybe there aren't 32bit images to create the container

                              1 Reply Last reply Reply Quote 0
                              • M Offline
                                mymike @matteo
                                last edited by 24 Sept 2018, 07:44

                                @matteo that ipv6 address is a link-local one, that means it could be used only in local network so, of course, it couldn't reach the internet and fetch the repos...

                                M 1 Reply Last reply 24 Sept 2018, 16:10 Reply Quote 0
                                • M Offline
                                  mymike @matteo
                                  last edited by 24 Sept 2018, 07:49

                                  @matteo I tried but I got some dependencies issues like I got for the indicator-display (of course the deps where different) I have ubuntu 18.04

                                  1 Reply Last reply Reply Quote 0
                                  • M Offline
                                    matteo @Luksus
                                    last edited by 24 Sept 2018, 16:04

                                    @luksus thank you for the insight. But I don't understand which repositories are needed and which aren't...Do you and @mymike know something about that? Unfortunately I think we are alone in this...:(

                                    M 1 Reply Last reply 24 Sept 2018, 16:54 Reply Quote 0
                                    • M Offline
                                      matteo @mymike
                                      last edited by 24 Sept 2018, 16:10

                                      @mymike I don't follow you: which ipv6 address error are you talking about regarding the dependencies? Please, give me more insight about it.

                                      M 1 Reply Last reply 24 Sept 2018, 16:58 Reply Quote 0
                                      • M Offline
                                        mymike @matteo
                                        last edited by 24 Sept 2018, 16:54

                                        @matteo idk which repos are needed. once the container is running it may have to install updates or dependencies requested by the component you're building, but if no internet connection is found it couldn't download them...

                                        1 Reply Last reply Reply Quote 0
                                        • M Offline
                                          mymike @matteo
                                          last edited by 24 Sept 2018, 16:58

                                          @matteo well, you said a connection is available for your container (eth0: inet6) with the addres fe80::216:3eff:fef5:570c, but that address cannot pass through router, it can only be used inside your local network: it cannot access the internet, so it is normal that deps aren't downloaded as no internet connection is found

                                          M 1 Reply Last reply 24 Sept 2018, 17:04 Reply Quote 0
                                          • M Offline
                                            matteo @mymike
                                            last edited by matteo 24 Sept 2018, 17:04

                                            @mymike oooooh ok.....thank you for the tip. So, according to your comment I actually don't have internet connection, is that right? But how is so? Are we talking about internet connection on my PC right? I do have it...weird...

                                            M 1 Reply Last reply 25 Sept 2018, 09:46 Reply Quote 0
                                            31 out of 51
                                            • First post
                                              31/51
                                              Last post