Comments (20)
I can confirm that
./kas-docker --isar build kas-iot2050-example.yml
works on my machine:
Ubuntu: 18.04.4
Kernel: 5.3.0-51
docker: 19.03.8
My VM has 4GB of RAM and two cores.
from meta-iot2050.
I suppose we can close the issue then.
FWIW, I've scheduled some safety measure for kas-docker (siemens/kas@385e42f) to detect and reject execution as root so that at least one source of trouble will be eliminated in the future.
from meta-iot2050.
Please also provide the console log where kas-docker was running. And probably also build/tmp/work/isar-arm64/mraa/2.0-r0/temp/log.do_install_builddeps
because this looks like something was missed when installing the build deps. I find that javac binary here.
from meta-iot2050.
Please also provide the console log where kas-docker was running. And probably also
build/tmp/work/isar-arm64/mraa/2.0-r0/temp/log.do_install_builddeps
because this looks like something was missed when installing the build deps. I find that javac binary here.
Hi jan-kiszka,
Attached there are the kas docker console output and the specific builddeps log files.
thank you.
kas-docker.txt
log.do_install_builddeps.txt
from meta-iot2050.
No luck in understanding or even reproducing yet. I just ran
./kas-docker --iser build kas-iot2050-example.yml --target mraa
and that worked.
But my Ubuntu VM is a bit older (18.04.2), and so is the docker.io (18.09.7). Will have to refresh that setup, but that may take some days.
Last thing to compare upfront: I was giving 4G RAM to the VM (and 8 cores, but that should not make the difference). How much does yours have?
from meta-iot2050.
We likely need a reference description for the setup of such a system.
Still, I'd like to understand eventually where this issue comes from. Apparently, it was not only seen once.
from meta-iot2050.
Another factor to specify, besides recommended RAM size, is free storage size. Both values should also go into our README.
from meta-iot2050.
I'll try to setup a VM from scratch with Ubuntu 20.04 to see what steps are needed to setup such a system.
For now I was using an already prepared VM for docker.
from meta-iot2050.
The machine with problems was:
System:
Win10 + Virtual Machine VirtualBox 6.0.8 r130520
VM:
Kernel: 5.3.0-51-generic x86_64 bits: 64
Desktop: Gnome 3.28.4 Distro: Ubuntu 18.04.4 LTS
CPU(s): 4 core of Intel Xeon IPC- 8GB RAM
Docker version 19.03.6
The machine is the same used for building IOT2040 images.
I've tried with another VM on VMWare on my Notebook:
Host: ubuntu Kernel: 4.15.0-47-generic x86_64
Distro: Ubuntu 16.04 xenial
CPU(s): 2 core of Intel Core i7-6820EQs - 8GB RAM
Docker version 18.09.6
And its working. I'm able to generate example image correctly.
from meta-iot2050.
I ran into this same issue (/usr/lib/jvm/default-java/bin/javac: not found). It was corrected by building on a debian 10 VB as opposed to Ubuntu 18 or by upgrading the MRAA patch to use python 3 exclusively (remove references to python 2.6).
from meta-iot2050.
Do you mean you dropped libpython-dev
from DEBIAN_BUILD_DEPENDS
in recipes-app/mraa/mraa.bb? Or what exactly did you do? How did you find out what was causing the problem for you?
from meta-iot2050.
Yes... initially I tried pulling a more recent version of mraa but the problem remained and was during the cmake. IIRC I did the cmake locally to resolve the build problems. This diff is based on a different version of mraa.bb but indicates the different DEBIAN_BUILD_DEPENDS (also turned off the cmake tests). Didn't get a change to test it as we determined that it would build on debian 10.
diff ./recipes-app/mraa/mraa.bb /localhome/tbrown/mraa-patch/ipc-edition/recipes-extended/mraa/mraa.bb
17,20c17,23
< file://0002-feat-iot2050-add-iot2050-platform-support.patch \
< file://0003-feat-iot2050-add-some-example-code-for-testing.patch \
< file://rules"
< SRC_URI[sha256sum] = "15783b4c4431a36d44ba95daf134318a04ff44a8190ba3f19abbda89ede35a26"
---
> file://0002-feat-iot2050-add-iot2050-platform-support.patch \
> file://0003-feat-iot2050-add-some-example-code-for-testing.patch "
>
> #
> # file://rules"
> #
> #SRC_URI[sha256sum] = "15783b4c4431a36d44ba95daf134318a04ff44a8190ba3f19abbda89ede35a26"
22c25,26
< MRAA_REV = "967585c9ea0e1a8818d2172d2395d8502f6180a2"
---
> #MRAA_REV = "967585c9ea0e1a8818d2172d2395d8502f6180a2"
> MRAA_REV = "e15ce6fbc76148ba8835adc92196b0d0a3f245e7"
30,39d33
< DEBIAN_BUILD_DEPENDS = " \
< cmake, \
< swig3.0, \
< libpython-dev, \
< libpython3-dev, \
< nodejs, \
< libnode-dev, \
< libjson-c-dev, \
< default-jdk"
<
40a35
> DEB_BUILD_GNU_TYPE = " aarch64-linux-gnu "
45a41,43
> sed -i -e 's/Build-Depends: /Build-Depends: cmake, swig3.0, libpython3-dev, nodejs, libnode-dev, libjson-c-dev, openjdk-11-jdk, /g' ${S}/debian/control
> sed -i -e 's/option (BUILDTESTS "Override the addition of tests" ON)/option (BUILDTESTS "Override the addition of tests" OFF)/g' ${S}/CMakeLists.txt
from meta-iot2050.
It's a bit tricky to find the root change here. My feeling is that one of your chances disabled the java binding support and, thus, no longer needs the javac during build. That would obviously also avoid the issue. Or can you rule that out?
from meta-iot2050.
javac is required for the cmake. I think that the default javac is not set up correctly with libpython-dev, libpython3-dev and default-jdk on some platforms. Removing libpython-dev and using the specific openjdk-11-jdk (as opposed to default-jdk) appears to set up javac in a more consistent manner across platforms.
from meta-iot2050.
cmake (with the mraa-provided setup) probes for java, it does not require it. You can perfectly build mraa without any java installed. However, our recipe enforces it (-DBUILDSWIGJAVA=ON
).
from meta-iot2050.
I also ran into the same issue, my machine is
Ubuntu: 16.04
Kernel: 4.15.0-112
docker: 18.09.7
Actually I have compiled it successfully before on same machine, but when I cleaned the cache and try to rebuild, this issue occured.
from meta-iot2050.
I changed -DBUILDSWIGJAVA=ON to -DBUILDSWIGJAVA=OFF, the issue is solved.
from meta-iot2050.
I think I found the solution:
diff --git a/recipes-app/mraa/mraa.bb b/recipes-app/mraa/mraa.bb
index 0c2f39c..03921dd 100644
--- a/recipes-app/mraa/mraa.bb
+++ b/recipes-app/mraa/mraa.bb
@@ -35,7 +35,7 @@ DEBIAN_BUILD_DEPENDS = " \
nodejs, \
libnode-dev, \
libjson-c-dev, \
- default-jdk"
+ default-jdk:native"
DEBIAN_DEPENDS = "python3, nodejs "
Could you retry with that change and java enabled? Please do a clean rebuild.
from meta-iot2050.
With configuration of default-jdk:native and -DBUILDSWIGJAVA=ON, the image is successfully compiled.
What is difference between default-jdk and default-jdk:native?
from meta-iot2050.
From the commit log of the upcoming fix:
Otherwise, also the arm64 jdk is installed, and
/usr/lib/jvm/default-java is set up to point to it. That will make the
build reference the arm64 javac which may work on some systems
inheriting binfmt-misc settings from the host, but not on all.
from meta-iot2050.
Related Issues (20)
- disk full new build HOT 4
- driver troubles HOT 5
- Image not booting on newer IOTs with firmware >=F06? HOT 16
- Last image and IOT PG1 HOT 5
- IOT2050 WITH NODE RED VERSION 3 AND NODE JS VERSION - PROBLEM WITH READING GPIO PINS HOT 3
- Mongoose webserver not working HOT 1
- SWUpdate automate complete_update.sh HOT 6
- Secure boot for Basic PG2 HOT 2
- High Memory Usage on Docker DotNet core container.
- Consider replacing install-on-emmc with installer stick
- Including .NET Core in the image. HOT 6
- Debian 12 / ttyX30 HOT 6
- IOT2050 - Node-red to Adafruit (MQQT not connecting) HOT 5
- Next release for IOT2050 HOT 2
- Kernel Panic when doing anything Network related
- Build failed because debian packages not fetchable HOT 1
- IOT & Modem sometimes not working well HOT 3
- secure-boot image not booting in iot2050 PG2 Advanced. HOT 6
- Updating V1.03 image to NodeJS 18
- Layers from manifest don't match image configuration
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from meta-iot2050.