Hi, I would like to ask a build of mono for EPEL 8. Would you mind requesting the branches and build them? Building it from src.fedoraproject.org, I only had to do a small change, prevented /usr/lib/rpm/mono-find-provides of being installed from mono-devel, once it is also provided by rpm-build. Thank you very much. - Breno
I guess we should upgrade to Mono 5.18 at the same time. It seems that is for long term support, since Debian Buster has that Mono version.
Quick Update: On the mailinglist, I announced the plan of providing Mono 5.18 in Epel8: https://lists.fedoraproject.org/archives/list/epel-devel@lists.fedoraproject.org/thread/TYMH72KDBSV5Z4QAYK6BCUZTXJDGAGYX/ Neil Gompa suggested to go for Mono 6.4 immediately. I liked that idea, and tried it for Fedora Rawhide. Unfortunately, I still have issues building Mono 6.4: https://copr.fedorainfracloud.org/coprs/tpokorra/mono-6.4/builds/ My current work on the spec file and patches is here: https://github.com/tpokorra/mono-6.x-fedora/tree/master/mono-6.4 Or do people think it is better to have Mono 5.18 in Epel than nothing?
the build error from bootstrap can be seen in the build log: if test -w /builddir/build/BUILD/mono-6.4.0.198/mcs; then :; else chmod -R +w /builddir/build/BUILD/mono-6.4.0.198/mcs; fi cd /builddir/build/BUILD/mono-6.4.0.198/mcs && make --no-print-directory -s NO_DIR_CHECK=1 PROFILES='net_4_x xbuild_12 xbuild_14 ' CC='gcc' all-profiles make[6]: mcs: Command not found make[6]: *** [build/profiles/build.make:134: build/deps/basic-profile-check.exe] Error 127 *** The runtime 'mono' doesn't appear to be usable. *** Trying the 'monolite-linux/62731146-81CF-4D61-826D-9A8DDED14432' directory. error CS2001: Source file `build/common/basic-profile-check.cs' could not be found Compilation failed: 1 error(s), 0 warnings make[8]: *** [build/profiles/build.make:134: build/deps/basic-profile-check.exe] Error 1 *** The contents of your 'monolite-linux/62731146-81CF-4D61-826D-9A8DDED14432' directory may be out-of-date *** You may want to try 'make get-monolite-latest' make[8]: *** [build/profiles/build.make:117: do-profile-check-monolite] Error 1 make[7]: *** [build/profiles/build.make:93: do-profile-check] Error 2 make[6]: *** [build/profiles/build.make:129: do-profile-check-monolite] Error 2 make[5]: *** [build/profiles/build.make:93: do-profile-check] Error 2 make[4]: *** [Makefile:57: profile-do--build--all] Error 2 make[3]: *** [Makefile:53: profiles-do--all] Error 2 make[2]: *** [Makefile:657: all-mcs] Error 2 make[2]: Leaving directory '/builddir/build/BUILD/mono-6.4.0.198/runtime' make[1]: *** [Makefile:590: all-recursive] Error 1 make[1]: Leaving directory '/builddir/build/BUILD/mono-6.4.0.198' make: *** [Makefile:520: all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.lz4o6s (%build) RPM build errors: Bad exit status from /var/tmp/rpm-tmp.lz4o6s (%build) Child return code was: 1 EXCEPTION: [Error()] Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/mockbuild/trace_decorator.py", line 95, in trace result = func(*args, **kw) File "/usr/lib/python3.7/site-packages/mockbuild/util.py", line 745, in do_with_status raise exception.Error("Command failed: \n # %s\n%s" % (command, output), child.returncode) mockbuild.exception.Error: Command failed: # /usr/bin/systemd-nspawn -q -M 89a319d46ce640e1ba06f2644a36f17d -D /var/lib/mock/1078358-fedora-31-x86_64-1571891134.666679/root -a --capability=cap_ipc_lock --bind=/tmp/mock-resolv.p0zagh3m:/etc/resolv.conf --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/builddir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin --setenv=PROMPT_COMMAND=printf "\033]0;<mock-chroot>\007" --setenv=PS1=<mock-chroot> \s-\v\$ --setenv=LANG=en_US.UTF-8 -u mockbuild bash --login -c /usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/mono.spec It seems, the monolite included in the tarball is not sufficient. But we don't want to download the monolite from the web, because the build can only be from the tarball. I tried to copy files around, that are missing or in the wrong place, but did not succeed yet.
It is now working in my copr: https://copr.fedorainfracloud.org/coprs/tpokorra/mono-6.6/builds/ I am now trying to get libgdiplus for epel8, and then will build mono 6.6 for epel8.
We have Mono 6.6 in Rawhide now. Unfortunately, mdoc is gone, when building with mcs. https://github.com/mono/mono/blob/2019-08/mcs/tools/mdoc/Makefile#L49 That means quite a number of packages need fixing that depend on mdoc... eg. mono-tools and newtonsoft-json
mdoc has been fixed in F32. I have now built Mono for Epel8 with bootstrap enabled. Now trying to build without bootstrap. I get this error: DEBUG util.py:600: Error: Transaction test error: DEBUG util.py:600: file /usr/lib/rpm/mono-find-provides from install of mono-devel-6.6.0-6.el8.x86_64 conflicts with file from package rpm-build-4.14.2-26.el8_1.x86_64 DEBUG util.py:600: file /usr/lib/rpm/mono-find-requires from install of mono-devel-6.6.0-6.el8.x86_64 conflicts with file from package rpm-build-4.14.2-26.el8_1.x86_64 So this needs to be fixed. Do we need to put the scripts into another directory?
Or we drop those files from the epel builds, because they are not needed here, because rpm-build still provides them
FEDORA-EPEL-2020-21d2ce425f has been submitted as an update to Fedora EPEL 8. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2020-21d2ce425f
FEDORA-EPEL-2020-21d2ce425f has been pushed to the Fedora EPEL 8 testing repository. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2020-21d2ce425f See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
(In reply to Timotheus Pokorra from comment #6) > I get this error: > > DEBUG util.py:600: Error: Transaction test error: > DEBUG util.py:600: file /usr/lib/rpm/mono-find-provides from install of > mono-devel-6.6.0-6.el8.x86_64 conflicts with file from package > rpm-build-4.14.2-26.el8_1.x86_64 > DEBUG util.py:600: file /usr/lib/rpm/mono-find-requires from install of > mono-devel-6.6.0-6.el8.x86_64 conflicts with file from package > rpm-build-4.14.2-26.el8_1.x86_64 > > So this needs to be fixed. Do we need to put the scripts into another > directory? We had the dependency generators removed from version 4.15 of RPM, because the Mono-provided ones are better (https://github.com/rpm-software-management/rpm/issues/673). However, until RHEL catches up (presumably not until RHEL 9), I think we have to use RPM's outdated versions and live with the incorrect dependencies that result from that.
A big thanks for building it, Timotheus!
FEDORA-EPEL-2020-21d2ce425f has been pushed to the Fedora EPEL 8 stable repository. If problem still persists, please make note of it in this bug report.