Error building
febs opened this issue ยท 13 comments
Processing files: retroarch-assets-2021+git0+ee33f8ef69-r0.noarch
| error: File not found: /home/builderuser/retro-build-environment/build/tmp/work/all-poky-linux/retroarch-assets/2021+gitAUTOINC+ee33f8ef69-r0/package/usr/share/retroarch/assets/xmb/daite/png/Nintendo - Wii ?Motion?.png
Other errors related to Wii png assets follow.
this is how it ends.
| DEBUG: Python function do_package_write_rpm finished
ERROR: Task (/home/builderuser/retro-build-environment/layers/meta-retro/recipes-retroarch/retroarch-assets/retroarch-assets.bb:do_package_write_rpm) failed with exit code '1'
NOTE: Tasks Summary: Attempted 4060 tasks of which 0 didn't need to be rerun and 1 failed.
Summary: 1 task failed:
/home/builderuser/retro-build-environment/layers/meta-retro/recipes-retroarch/retroarch-assets/retroarch-assets.bb:do_package_write_rpm
Summary: There were 48 WARNING messages.
Summary: There was 1 ERROR message, returning a non-zero exit code.
Built on an Ubuntu 20.04 Docker image. Commit is cb9ca62ddff4ee0c185a0a3e906696c7ce340b4c
Thank you very much,
This might be same as issue as mention here: #30, there is fix in oe-core/poky for this (master branch), but I'm not sure if this will be back-ported to kirkstone.
Are you using recent changes for master meta-retro?
ok, I'm see cb9ca62ddff4ee0c185a0a3e906696c7ce340b4c
I'll back-port original workaround from other recipe.
Other possible workaround is to switch from "rpm" to "ipk" package backend in local.conf
Thanks for reporting :)
Thanks for taking care of this.
Switched to ipk, the process now fails with this:
| /home/builderuser/retro-build-environment/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/kronos-libretro/2021+gitAUTOINC+a387dec043-r1/recipe-sysroot-native/usr/bin/arm-poky-linux-gnueabi/../../libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.3.0/ld: cannot find -lGL: No such file or directory
| collect2: error: ld returned 1 exit status
| make: *** [Makefile:318: kronos_libretro.so] Error 1
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
ERROR: Task (/home/builderuser/retro-build-environment/layers/meta-retro/recipes-libretro/kronos-libretro/kronos-libretro_git.bb:do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 3723 tasks of which 3713 didn't need to be rerun and 1 failed.
Summary: 1 task failed:
/home/builderuser/retro-build-environment/layers/meta-retro/recipes-libretro/kronos-libretro/kronos-libretro_git.bb:do_compile
You may check this for details: https://git.openembedded.org/openembedded-core/commit/?id=9916212b4810280108107d94cd2c0cd3e07ae6ed
Briefly: there is a bug in yocto that have problem with files that contains characters like "[", "]" and issue is rpm specific.
Yup, unfortunately with ipk I get the above error and actually it doesn't build with ipk too.
BTW, considering I am not into N64 emulation, is there a way to just skip that core and its assets?
also, what distro are you using to build the image? I would try to reproduce your environment. Thank you very much for your support.
You may want to try 8664cab
considering I am not into N64 emulation, is there a way to just skip that core and its assets?
You can select from core collection by overriding LIBRETRO_TARGET_PLATFORMS. Sadly there is no asset separation per platform / core. I'm installing what libretro provides as whole - it's difficult to track emulator / asset relations.
More details: recipes-core/packagegroups/packagegroup-libretro-cores.bb
also, what distro are you using to build the image? I would try to reproduce your environment
Unfortunately I'm using Gentoo Linux. Sharing my configuration would be painful and probably is not worth it.
Yup, unfortunately with ipk I get the above error and actually it doesn't build with ipk too.
You mean missing -lGL, or original problem.
Thanks for your reply.
I meant, while using "package_ipk" (or deb for what is worth) failing for "missing -lGL", despite the libraries are definitely there.
By using "package_rpm" I got the parsing square brackets [ error.
With 8664cab I get the same GL error. BTW, for some reason if I "git pull" the head of master keeps being cb9ca62ddf, same if I clone from scratch. I had to apply the commit manually, or to delete the files triggering the bug.
BTW, for some reason if I "git pull" the head of master keeps being cb9ca62ddf
Probably this is because of submodule sub-tree, those by default do not track origin and set specific commit rather than branch (unfortunately this is how it is)
For specific layer you may want to use:
cd layer/meta-retro
git fetch --all
git reset --hard origin/master
Or update to latest (all layers, specific branches are set in .gitmodules)
cd retro-build-env...
git submodule update --remote
This should reset all layers to default state:
cd retro-build-env...
git submodule update --init
With 8664cab I get the same GL error.
I'll try to reproduce, for time being you may want to remove manually this kronos core from: layers/meta-retro/recipes-packagegroups/groups/packagegroup-libretro-saturn.bb. We might see if this is only issue.
Removed kronos, it is moving forward!
I can provide the Dockerfile I am using if that might be helpful in reproducing the issue.
Removing kronos allowed the process to finish and build retro-image-full-raspberrypi4-20220908085816.rootfs.wic.bz2
!
Ok, I'll try to fix it soon.
FWIW, if it may help:
FROM ubuntu:20.04
RUN apt-get update
# TO DEBUG STUFF
RUN apt-get install vim -y
# TIMEZONE
RUN apt-get install -yq tzdata && \
ln -fs /usr/share/zoneinfo/Europe/Rome /etc/localtime && \
dpkg-reconfigure -f noninteractive tzdata
# en_US-UTF-8 must be the locale or bitbake would complain
RUN apt-get install -y locales
RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
locale-gen
ENV LC_ALL en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
RUN apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm python3-subunit mesa-common-dev zstd liblz4-tool -y
# creating an unprivileged user
RUN adduser --disabled-password --gecos "" builderuser
USER builderuser
WORKDIR /home/builderuser
RUN git clone --recursive https://github.com/dev-0x7C6/retro-build-environment.git
ENTRYPOINT ["/bin/bash"]