[yocto] meta-mono: QA Error building mono-5.12.0.226

Martin Townsend mtownsend1973 at gmail.com
Fri Nov 23 03:07:51 PST 2018


On Fri, Nov 23, 2018 at 10:45 AM Alex Lennon <ajlennon at gmail.com> wrote:
>
>
>
> On 23/11/2018 08:55, Martin Townsend wrote:
> > Hi Alex,
> > On Thu, Nov 22, 2018 at 3:49 PM Alex J Lennon <ajlennon at gmail.com> wrote:
> >>
> >> On 22/11/2018 15:46, Martin Townsend wrote:
> >>> Hi,
> >>>
> >>> This one is probably for the meta-mono maintainer
> >>>
> >>> I was getting quite a few file-rdeps QA errors.
> >>> I managed to get rid of them all except 1 using
> >>> RDEPENDS_${PN}-libs-2.0 += "mono"
> >>> RDEPENDS_${PN}-libs-3.5 += "mono"
> >>> RDEPENDS_${PN}-libs-4.0 += "mono"
> >>> RDEPENDS_${PN}-libs-4.5 += "mono"
> >>> RDEPENDS_${PN}-gac += "mono"
> >>> RDEPENDS_${PN}-configuration-crypto += "mono"
> >>> RDEPENDS_${PN}-xbuild += "mono"
> >>> RDEPENDS_${PN}-api-4.5.1 += "mono"
> >>> RDEPENDS_${PN}-api-4.5.2 += "mono"
> >>> RDEPENDS_${PN}-api-4.6 += "mono"
> >>> RDEPENDS_${PN}-api-4.6.1 += "mono"
> >>> RDEPENDS_${PN}-api-4.6.2 += "mono"
> >>> RDEPENDS_${PN}-api-4.7 += "mono"
> >>>
> >>> The one remaining is
> >>>
> >>> ERROR: mono-5.12.0.226-r0 do_package_qa: QA Issue:
> >>> /usr/lib/mono/4.5/Microsoft.CodeAnalysis.Scripting.dll contained in
> >>> package mono-libs-4.5 requires mono(System.Runtime.Loader), but no
> >>> providers found in RDEPENDS_mono-libs-4.5? [file-rdeps]
> >>> ERROR: mono-5.12.0.226-r0 do_package_qa: QA run found fatal errors.
> >>> Please consider fixing them.
> >>> ERROR: mono-5.12.0.226-r0 do_package_qa: Function failed: do_package_qa
> >>> ERROR: Logfile of failure stored in:
> >>> /ws/rufilla/oina/tools-oina-build-local/build_oxinst/tmp/work/armv7ahf-neon-poky-linux-gnueabi/mono/5.12.0.226-r0/temp/log.do_package_qa.15001
> >>> ERROR: Task (/ws/rufilla/oina/tools-oina-build-local/build_oxinst/../meta-mono/recipes-mono/mono/mono_5.12.0.226.bb:do_package_qa)
> >>> failed with exit code '1'
> >>>
> >>> It looks like the 4.5 lib package requires the System.Runtime.Loader
> >>> library but I'm not sure how to get it to build this or I see there is
> >>> an external directory which looks like it contains all the 4.5 libs so
> >>> maybe it hasn't been included in here?
> >>>
> >>> Any Help appreciated,
> >>> Martin.
> >> Hi Martin,
> >>
> >> I've been doing some recent work here which might help
> >>
> >> https://github.com/dynamicdevices/meta-mono/tree/master
> >>
> >> Cheers,
> >>
> >> Alex
> >>
> >>
> > Thanks for the reply Alex.
> >
> > I tried this meta-mono layer too but it failed to compile/link
> > | ../../external/corefx/src/Native/Unix/System.Native/.libs/libmono_system_native_la-pal_errno.o:
> > file not recognized: File format not recognized
> > | collect2: error: ld returned 1 exit status
> > | Makefile:1355: recipe for target 'libmono-system-native.la' failed
> >
> >
> > I managed to get the recipe in the normal meta-mono to compile by
> > installing System.Runtime.Loader.dll into the image but as soon as it
> > tried to create the rootfs I get the following error
> > Total size: 75 M
> > Installed size: 301 M
> > Downloading Packages:
> > Running transaction check
> > Error: transaction check vs depsolve:
> > mono(System.Collections.Immutable) = 1.2.0.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Diagnostics.StackTrace) = 4.0.2.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.IO) = 4.0.10.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.IO.Compression) = 4.1.1.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Linq.Expressions) = 4.0.10.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Reflection) = 4.0.10.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Runtime) = 4.0.20.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Runtime.Extensions) = 4.0.10.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Runtime.InteropServices) = 4.0.20.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Security.Cryptography.Algorithms) = 4.0.0.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Text.Encoding.CodePages) = 4.0.2.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.ValueTuple) = 4.0.1.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > mono(System.Xml.XPath.XDocument) = 4.0.1.0 is needed by
> > mono-libs-4.5-5.12.0.226-r0.13.armv7ahf_neon
> > To diagnose the problem, try running: 'rpm -Va --nofiles --nodigest'.
> > You probably have corrupted RPMDB, running 'rpm --rebuilddb' might fix
> > the issue.
> >
> > I think I need to understand more about the mono packaging, any
> > pointers would be greatly appreciated.
> >
> >
>
> Hi Martin,
>
> I've been setting up an auto-builder using Jenkins pulling from that git
> repo, to make my life easier, and it builds successfully...
>
> @see: http://build.dynamicdevices.co.uk:8080/job/meta-mono/40/console
>
> I could be misunderstanding. Are you doing something custom or does the
> vanilla qemux86-64 build fail for you?
>
> Cheers!
>
> Alex
>

I was using master-next which is probably why I was getting the
compilation errors.  I tried master and it compiles but I get the same
QA Errors that I was originally seeing.  I'm building for an arm
cortex A-9 which may be the reason for these problems.  If you want me
to try anything I'll keep the build on my laptop.

I've managed to get the meta-mono from the Yocto project working now
by hacking pkgdata so it doesn't fail do_rootfs and adding
System.Runtime.Loader.dll to the package.

Cheers,
Martin.


More information about the yocto mailing list