HowTo: contributing to app development with crossbuilder
-
@mardy here we go with the keyboard component:
I tried the same with the network-manager after copying the folder from GitHub into my local folder and I got some additional work done, but I have no idea of what's the meaning:
-
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, thenlxc delete <container>
) and modify thecrossbuilder
script by adding the lineset -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:
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:
-
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:
-
@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:
Thank you in advance.
Matteo
-
Hi @matteo!
To update crossbuilder, just go to the directory where it's located and rungit pull
. As for the error, I would really need to see the full logs, as the real error most likely happens much before thatdch
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 whydch
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:
- Previous lxd installation deleted with Synaptic (lxd and lxd-client packages);
- crossbuilder folder downloaded from https://github.com/ubports/crossbuilder;
- 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;
- 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...