<< needed on host machine (please update the article) apt install gcc-arm-none-eabi binutils-arm-none-eabi genromfs >>
Hi Alin: This is super strange. genromfs isn't installed on my Host Machine: ## genromfs isn't installed on my Host Machine $ genromfs -h Command 'genromfs' not found ## genromfs works fine inside Docker $ sudo docker run -it \ ghcr.io/apache/nuttx/apache-nuttx-ci-linux:latest \ /bin/bash -c "genromfs -h" genromfs 0.5.2 Is anyone else having problems building NuttX with our Docker Image? Please lemme know thanks! << /usr/bin/bash: line 1: arm-nuttx-eabi-gcc: command not found >> This is a harmless message, we're tracking the issue here: https://github.com/apache/nuttx/issues/14374 Lup On Mon, Oct 28, 2024 at 11:23 AM Alin Jerpelea <jerpe...@gmail.com> wrote: > Hi Lup, > > needed on host machine (please update the article) > > apt install gcc-arm-none-eabi binutils-arm-none-eabi genromfs > > error still unidentified > > onfiguration/Tool: c5471evm/nettest,CONFIG_ARM_TOOLCHAIN_GNU_EABI > 2024-10-28 04:20:28 > > ------------------------------------------------------------------------------------ > Cleaning... > Configuring... > Disabling CONFIG_ARM_TOOLCHAIN_BUILDROOT > Enabling CONFIG_ARM_TOOLCHAIN_GNU_EABI > Building NuttX... > Normalize c5471evm/nettest > /usr/bin/bash: line 1: arm-nuttx-eabi-gcc: command not found > /usr/bin/bash: line 1: arm-nuttx-eabi-gcc: command not found > > Best Regards > > Alin > > > On Mon, Oct 28, 2024 at 3:25 AM Lee, Lup Yuen <lu...@appkaki.com> wrote: > > > << /usr/bin/bash: line 1: genromfs: command not found >> > > > > Hi Alin: That's very odd, genromfs is inside the Docker Image so it > > shouldn't fail (unless we're running outside Docker?). Here's how we > check > > genromfs: > > > > ## This will show "genromfs 0.5.2" > > sudo docker run -it \ > > ghcr.io/apache/nuttx/apache-nuttx-ci-linux:latest \ > > /bin/bash -c "genromfs -h" > > > > Also spresense:elf builds OK on my Ubuntu PC: > > > > > https://gist.github.com/nuttxpr/8a203426383b84626c8a5bd06168bf9b#file-ci-arm-01-log-L359 > > > > Could you try this (from my article) and lemme know if it works? Thanks! > > > > ## Compile Target Group arm-01, including spresense/elf > > job=arm-01 > > sudo docker run -it \ > > ghcr.io/apache/nuttx/apache-nuttx-ci-linux:latest \ > > /bin/bash -c " > > cd ; > > pwd ; > > git clone https://github.com/apache/nuttx ; > > git clone https://github.com/apache/nuttx-apps apps ; > > pushd nuttx ; echo NuttX Source: > > https://github.com/apache/nuttx/tree/\$(git rev-parse HEAD) ; popd ; > > pushd apps ; echo NuttX Apps: > > https://github.com/apache/nuttx-apps/tree/\$(git rev-parse HEAD) ; popd > ; > > sleep 10 ; > > cd nuttx/tools/ci ; > > (./cibuild.sh -c -A -N -R testlist/$job.dat || echo '***** BUILD > FAILED') > > ; > > " > > > > Lup > > > > On Mon, Oct 28, 2024 at 10:01 AM Alin Jerpelea <jerpe...@gmail.com> > wrote: > > > > > Hi Lup > > > I started the test and I found a fiew issues > > > > > > Configuration/Tool: spresense/elf,CONFIG_ARM_TOOLCHAIN_GNU_EABI > > > 2024-10-28 02:49:20 > > > > > > > > > ------------------------------------------------------------------------------------ > > > Cleaning... > > > Configuring... > > > Disabling CONFIG_ARM_TOOLCHAIN_GNU_EABI > > > Enabling CONFIG_ARM_TOOLCHAIN_GNU_EABI > > > Building NuttX... > > > /usr/bin/bash: line 1: genromfs: command not found > > > make[3]: *** [Makefile:81: > > > /awork/nuttx/NuttX/farm/apps/examples/elf/tests/romfs.img] Error 127 > > > make[3]: Target 'all' not remade because of errors. > > > make[2]: *** [Makefile:59: build] Error 2 > > > make[2]: Target 'all' not remade because of errors. > > > make[1]: *** [Makefile:52: > /awork/nuttx/NuttX/farm/apps/examples/elf_all] > > > Error 2 > > > make[1]: Target 'all' not remade because of errors. > > > make: *** [tools/LibTargets.mk:232: > > /awork/nuttx/NuttX/farm/apps/libapps.a] > > > Error 2 > > > make: Target 'all' not remade because of errors. > > > /awork/nuttx/NuttX/farm/nuttx/tools/testbuild.sh: line 385: > > > /awork/nuttx/NuttX/farm/nuttx/../nuttx/nuttx.manifest: No such file or > > > directory > > > Normalize spresense/elf > > > > > > Configuration/Tool: spresense/posix_spawn,CONFIG_ARM_TOOLCHAIN_GNU_EABI > > > 2024-10-28 02:51:17 > > > > > > > > > ------------------------------------------------------------------------------------ > > > Cleaning... > > > Configuring... > > > Disabling CONFIG_ARM_TOOLCHAIN_GNU_EABI > > > Enabling CONFIG_ARM_TOOLCHAIN_GNU_EABI > > > Building NuttX... > > > /usr/bin/bash: line 1: genromfs: command not found > > > make[3]: *** [Makefile:50: > > > /awork/nuttx/NuttX/farm/apps/examples/posix_spawn/filesystem/romfs.img] > > > Error 127 > > > make[3]: Target 'all' not remade because of errors. > > > make[2]: *** [Makefile:47: build] Error 2 > > > make[2]: Target 'all' not remade because of errors. > > > make[1]: *** [Makefile:52: > > > /awork/nuttx/NuttX/farm/apps/examples/posix_spawn_all] Error 2 > > > make[1]: Target 'all' not remade because of errors. > > > make: *** [tools/LibTargets.mk:232: > > /awork/nuttx/NuttX/farm/apps/libapps.a] > > > Error 2 > > > make: Target 'all' not remade because of errors. > > > /awork/nuttx/NuttX/farm/nuttx/tools/testbuild.sh: line 385: > > > /awork/nuttx/NuttX/farm/nuttx/../nuttx/nuttx.manifest: No such file or > > > directory > > > Normalize spresense/posix_spawn > > > > > > Can you please take a look > > > > > > Best regards > > > > > > On Sun, Oct 27, 2024 at 11:47 PM Lee, Lup Yuen <lu...@appkaki.com> > > wrote: > > > > > > > << 1) Regarding the script that uploads CI results to github gists: > > will > > > > this > > > > work for anyone who runs the docker image? If not, what should be > done > > > with > > > > the results? >> > > > > > > > > Thanks Nathan! I'm using GitHub Gists as a simple way to push our > Build > > > > Logs to the cloud for further processing and alerting. (There might > be > > a > > > > better way) > > > > > > > > I'm running my Build Server logged in as the `nuttxpr` GitHub Account > > > (via > > > > `gh login auth`), so all Gists will be published under the `nuttxpr` > > > > account. Someone who runs the Docker Image will probably create a new > > > > GitHub Account to publish the Gists: https://gist.github.com/nuttxpr > > > > > > > > What we need next: A script that will (1) Consolidate the Gists > > > > across Multiple GitHub Accounts (2) Scan the Build Logs for Errors > and > > > > Warnings (3) Alert somebody. > > > > > > > > << 2) Is there a way to detect (like a GPIO rising or falling edge, > for > > > > lack > > > > of a better description) that a build that previously succeeded is > > > failing, > > > > or a build that was previously failing succeeds again, to notify only > > > about > > > > targets that change status? >> > > > > > > > > We have a problem: There doesn't seem to be an easy to scan our Build > > > Logs > > > > for Errors and Warnings: > > > > > > https://lupyuen.codeberg.page/articles/ci2.html#find-errors-and-warnings > > > > > > > > We should implement this Log Scanning in the script that I mentioned > > > > earlier. Then we can detect Failed Builds and alert somebody. Maybe > > > through > > > > open-source Prometheus + Grafana: > > > > https://lupyuen.github.io/articles/prometheus > > > > > > > > << 3) Regarding M1 macs not being able to run the CI builds, I > suggest > > to > > > > state that as a call to action, e.g., help wanted to make the build > > > succeed > > > > on M1 macs, please see such-and-such issue on github... >> > > > > > > > > Yep I'll post an Issue at our NuttX Repo. I'll explain what happens > > when > > > I > > > > run the CI Build on my M2 Mac. Thanks! > > > > > > > > Lup > > > > > > > > On Mon, Oct 28, 2024 at 12:15 AM Nathan Hartman < > > > hartman.nat...@gmail.com> > > > > wrote: > > > > > > > > > Nice article Lup! Thank you. A few questions: > > > > > > > > > > 1) Regarding the script that uploads CI results to github gists: > will > > > > this > > > > > work for anyone who runs the docker image? If not, what should be > > done > > > > with > > > > > the results? > > > > > > > > > > 2) Is there a way to detect (like a GPIO rising or falling edge, > for > > > lack > > > > > of a better description) that a build that previously succeeded is > > > > failing, > > > > > or a build that was previously failing succeeds again, to notify > only > > > > about > > > > > targets that change status? > > > > > > > > > > 3) Regarding M1 macs not being able to run the CI builds, I suggest > > to > > > > > state that as a call to action, e.g., help wanted to make the build > > > > succeed > > > > > on M1 macs, please see such-and-such issue on github... > > > > > > > > > > Otherwise looks good and thanks again! > > > > > > > > > > Cheers, > > > > > Nathan > > > > > > > > > > On Sat, Oct 26, 2024 at 6:08 PM Lee, Lup Yuen <lu...@appkaki.com> > > > wrote: > > > > > > > > > > > Refurbished Ubuntu PCs have become quite affordable. Can we turn > > them > > > > > into > > > > > > a (Low-Cost) Build Farm for NuttX? > > > > > > > > > > > > In this article we… > > > > > > (1) Compile NuttX for a group of Arm32 Boards > > > > > > (2) Then scale up and compile NuttX for All Arm32 Boards > > > > > > (3) Thanks to the Docker Image provided by NuttX > > > > > > (4) Why do this? Because GitHub Actions taught us a Painful > Lesson: > > > > > > Freebies Won’t Last Forever! > > > > > > > > > > > > Check out the article: > > > https://lupyuen.codeberg.page/articles/ci2.html > > > > > > > > > > > > Lup > > > > > > > > > > > > > > > > > > > > >