HowTo: contributing to app development with crossbuilder



  • Ok, for the network-manager I found out the output was different because it was the first time I ran it with crossbuilder....If I do it again, I find a similar behavior than with the keyboard-component.



  • It looks like the container was not created properly. Can you please delete it (lxc list to see the container name, then lxc delete <container>) and modify the crossbuilder script by adding the line

    set -x
    

    near the beginning, right after the existing set -e line? Then please run it and post here the full output. By the way, what versions of lxc and Ubuntu are you using?



  • @mardy Hi mardy, sorry if I didn't reply before but I was in a long holidays....just back though. To answer your question, the version of lxc is 2.0.11 and I'm on Ubuntu 16.04 Desktop. Running the first command I got this:
    0_1535991267921_e9995117-ed62-4c51-877b-65aec5f44f33-image.png

    Am I supposed to delete both the environments before to proceed?

    Thank you for your help!



  • Yes, @matteo, please try to delete them. Also, update your crossbuilder, before trying again. Please let me know if the new version somehow helps.



  • @mardy I deleted both the containers, added the new required line in the script and then run the crossbuilder command. Please check here below the output:
    0_1536163811793_006ba3d8-3dbc-4d47-8306-60e6d7b81d58-image.png



  • I tried to re-setup the environment and I got caught in an error (or maybe that's what I feel about). Here below the output:

    https://paste.ubuntu.com/p/DGN3642VNg/

    Then I tried to cross build the OSK package to the connected device, a Pro5, by just typing "crossbuilder" in the OSK directory and this is the result (again a final error it seems):

    https://paste.ubuntu.com/p/Crwm65FyQV/

    Any suggestion?

    Matteo



  • Sorry, if I run the same command "crossbuilder" in the OSK directory, now there is a complain with a missing "dch" command:

    https://paste.ubuntu.com/p/dRpvrK8thY/



  • @mardy I found this issue on Github which explains why my container doesn't connect to the internet as well as experienced by @jonius: https://github.com/ubports/crossbuilder/issues/2

    But now, how to fix it?

    Thank you.

    P.S. my laptop is running Ubuntu 16.04 LTS (Xenial) but I see that in your answer on the Github issue you are indicating that the devscripts are installed by means of a repo available for Vivid?? Could it be the culprit?

    Matteo



  • Hi @matteo! I think your issue might not be related to https://github.com/ubports/crossbuilder/issues/2

    Instead, can you please update your crossbuilder again, then remove all of your existing lxc containers (those created with crossbuilder, at least) and run the crossbuilder setup-lxd command again (and collect the logs in the same way you did before)?



  • @mardy I'm not sure what you do mean for "update crossbuilder"...would you please help me to figure this out? Maybe I'm failing this step...Anyhow, I deleted the previous lxc containers and ran the "crossbuilder setup-lxd" command; this is the output: https://paste.ubuntu.com/p/hhDr699mmH/

    If I re-create the keyboard container with my phone connected I got always the same error: "Container is not connected to the Internet."



  • @mardy I'd need your help on this. Not being able to update crossbuilder as per your request, I just got rid of the previous installation and I started a fresh installation from scratch. Everything went smooth, so I tried again to build the OSK app onto my phone but I still get the error complaining for a missing command dch, I guess near to the end of the building process:

    0_1537096449272_0174bfbe-ba0c-49f8-87eb-653bb5914ecb-image.png

    Thank you in advance.

    Matteo



  • Hi @matteo!
    To update crossbuilder, just go to the directory where it's located and run git pull. As for the error, I would really need to see the full logs, as the real error most likely happens much before that dch line.



  • @mardy ok for the hint, I'll try it but I'm not sure git command will work to me, because I tried to use it before but it failed miserably; so, what I did to install crossbuilder before, was to manually copy the folder from Github to my local folder on my PC and then manually installing from there. I don't know if this makes any difference though.

    However, I already posted the complete output for the "dch error"; if you scroll upwards the previous messages, you can find it. I re-post here for ease of reference:

    https://paste.ubuntu.com/p/dRpvrK8thY/

    Thank you for the help, much appreciated 😉



  • 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.



  • @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/



  • @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.



  • 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?



  • @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!



  • 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...



  • 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...


Log in to reply