Bugzilla – Bug 314670
spec file to rebuild rpms fails on Fedora FC1
Last modified: 2007-09-15 21:24:46 UTC
---- Reported by david.brownlee@comcast.net 2004-05-11 12:09:18 MST ---- Please fill in this template when reporting a bug, unless you know what you are doing. Description of Problem: Can not rebuild binary rpms from source tarball and spec file. This is necessary since the binary rpms don't work on FC1 (with updates). The provided binaries fail to load libmono with the error "cannot handle TLS data" (see http://www.gotmono.com/cgi-bin/yabb/YaBB.pl?board=PROJECT;action=display;num=1080600514 for a similar discussion regarding rh9). It would also be nice if a mono*.src.rpm file was available from the download page. Steps to reproduce the problem: 1. Download http://www.go-mono.com/packagers/mono/mono.spec into /usr/src/redhat/SPEC 2. Download http://www.go-mono.com/archive/beta1/mono-0.91.tar.gz into /usr/src/redhat/SOURCE 3. cd /usr/src/redhat/SPEC && rpmbuild -ba mono.spec (of course, you shouldn't build packages as root but...) Actual Results: Fails to create packages since %files section of spec file is missing some files and the man pages should end in .gz since they are compressed. Expected Results: shiny new binary rpms How often does this happen? only when I try to build rpms from the source and spec file. :) Additional Information: Not sure if I added the missing files to the right package but, the following patch to mono.spec allowed me to build rpms that seem to work (at least mcs can compile a helloworld.cs and mono can run the result). --- mono.spec.orig 2004-05-11 08:46:27.000000000 -0700 +++ mono.spec 2004-05-11 07:34:50.000000000 -0700 @@ -23,13 +23,13 @@ BuildRequires: glib2-devel BuildRequires: pkgconfig BuildRequires: rsync -BuildRequires: libicu-devel = 2.6.1-1.ximian.6.5 +BuildRequires: libicu-devel = 2.6.1-1.ximian.7.5 BuildRequires: j2sdk Summary: The Mono CIL runtime, suitable for running .NET code Group: Development/Tools Requires: glib2 -Requires: icu = 2.6.1-1.ximian.6.5 -Requires: libicu26 = 2.6.1-1.ximian.6.5 +Requires: icu = 2.6.1-1.ximian.7.5 +Requires: libicu26 = 2.6.1-1.ximian.7.5 Requires: mono-posix == 0.91-0.ximian.6.3 Provides: ximian-mono-core = %{?epoch: %{epoch}:}%{version}-%{?ximrev:%{ximrev}}%{!?ximrev:%{release}} Obsoletes: mono @@ -48,28 +48,28 @@ %doc AUTHORS COPYING.LIB ChangeLog NEWS README /usr/bin/mono /usr/lib/libmono.so* -/usr/share/man/man1/mono.1 +/usr/share/man/man1/mono.1.gz /usr/bin/mint /usr/lib/libmint.so* -/usr/share/man/man1/mint.1 +/usr/share/man/man1/mint.1.gz /usr/bin/mcs /usr/lib/mono/1.0/mcs.exe -/usr/share/man/man1/mcs.1 +/usr/share/man/man1/mcs.1.gz /usr/bin/certmgr /usr/bin/certmgr.exe -/usr/share/man/man1/certmgr.1 +/usr/share/man/man1/certmgr.1.gz /usr/bin/chktrust.exe /usr/bin/chktrust -/usr/share/man/man1/chktrust.1 +/usr/share/man/man1/chktrust.1.gz /usr/bin/setreg /usr/bin/setreg.exe -/usr/share/man/man1/setreg.1 +/usr/share/man/man1/setreg.1.gz /usr/bin/gacutil /usr/bin/gacutil.exe -/usr/share/man/man1/gacutil.1 +/usr/share/man/man1/gacutil.1.gz /usr/bin/sn /usr/bin/sn.exe -/usr/share/man/man1/sn.1 +/usr/share/man/man1/sn.1.gz /usr/lib/mono/gac/Cscompmgd/7.0.5000.0*/* /usr/lib/mono/1.0/Cscompmgd.dll /usr/lib/mono/gac/I18N.West/1.0.5000.0*/* @@ -91,7 +91,19 @@ /usr/lib/mscorlib.dll /etc/mono/config /etc/mono/machine.config -/usr/share/man/man5/mono-config.5 +/usr/share/man/man5/mono-config.5.gz +/usr/bin/cilc +/usr/bin/cilc.exe +/usr/bin/monosn +/usr/lib/libMonoPosixHelper.a +/usr/lib/libMonoPosixHelper.la +/usr/lib/libmono-ikvm-jni.a +/usr/lib/libmono-ikvm-jni.la +/usr/lib/mono/gac/Mono.Security.Win32/1.0.5000.0__0738eb9f132ed756/Mono.Security.Win32.dll +/usr/lib/mono/gac/Mono.Security.Win32/1.0.5000.0__0738eb9f132ed756/__AssemblyInfo__ +/usr/share/man/man1/cilc.1.gz +/usr/share/man/man1/monostyle.1.gz +/usr/share/man/man1/oldmono.1.gz %package -n mono-basic @@ -282,13 +294,13 @@ /usr/lib/mono/1.0/System.Web.Services.dll /usr/bin/disco /usr/bin/disco.exe -/usr/share/man/man1/disco.1 +/usr/share/man/man1/disco.1.gz /usr/bin/wsdl /usr/bin/wsdl.exe -/usr/share/man/man1/wsdl.1 +/usr/share/man/man1/wsdl.1.gz /usr/bin/xsd /usr/bin/xsd.exe -/usr/share/man/man1/xsd.1 +/usr/share/man/man1/xsd.1.gz /etc/mono/DefaultWsdlHelpGenerator.aspx @@ -390,7 +402,7 @@ %defattr(-, root, root) /usr/bin/sqlsharp /usr/bin/sqlsharp.exe -/usr/share/man/man1/sqlsharp.1 +/usr/share/man/man1/sqlsharp.1.gz /usr/lib/mono/gac/System.Data/1.0.5000.0*/* /usr/lib/mono/1.0/System.Data.dll /usr/lib/mono/gac/Mono.Data.Tds/1.0.5000.0*/* @@ -581,7 +593,7 @@ /usr/lib/mono/1.0/System.Runtime.Serialization.Formatters.Soap.dll /usr/bin/soapsuds.exe /usr/bin/soapsuds -/usr/share/man/man1/soapsuds.1 +/usr/share/man/man1/soapsuds.1.gz %package -n mono-posix @@ -615,30 +627,30 @@ %files -n mono-core-devel %defattr(-, root, root) /usr/bin/monodis -/usr/share/man/man1/monodis.1 +/usr/share/man/man1/monodis.1.gz /usr/bin/ilasm /usr/bin/ilasm.exe -/usr/share/man/man1/ilasm.1 +/usr/share/man/man1/ilasm.1.gz /usr/bin/genxs /usr/bin/genxs.exe -/usr/share/man/man1/genxs.1 +/usr/share/man/man1/genxs.1.gz /usr/bin/al /usr/bin/al.exe /usr/bin/makecert /usr/bin/MakeCert.exe -/usr/share/man/man1/makecert.1 +/usr/share/man/man1/makecert.1.gz /usr/bin/monop /usr/bin/monop.exe -/usr/share/man/man1/monop.1 +/usr/share/man/man1/monop.1.gz /usr/bin/cert2spc /usr/bin/cert2spc.exe -/usr/share/man/man1/cert2spc.1 +/usr/share/man/man1/cert2spc.1.gz /usr/bin/signcode.exe /usr/bin/signcode -/usr/share/man/man1/signcode.1 +/usr/share/man/man1/signcode.1.gz /usr/bin/secutil /usr/bin/secutil.exe -/usr/share/man/man1/secutil.1 +/usr/share/man/man1/secutil.1.gz /usr/bin/pedump /usr/bin/monoresgen /usr/bin/monoresgen.exe ---- Additional Comments From duncan@ximian.com 2004-05-12 16:03:02 MST ---- First, I have 2 questions: a) Why are the binary RPM packages not working on FC1 with updates? What are the conflicts? b) About the TLS error, what kernel are you running? Is it NPTL enabled? It is assumed that RH9, FC1 and SuSE 9.1 are NPTL-enabled distributions. Now, about the SPEC file: The changes you made were necessary because the SPEC file I uploaded came from my RH 9 build environment. The files you added, cilc, monosn, the various .la files and Mono.Security.Win32 are part of the tarball, but they do not need to be released. That's why there are not in the original SPEC file I published. I'll look into gzipping our man pages in the next revision of our packages. ---- Additional Comments From david.brownlee@comcast.net 2004-05-27 23:02:00 MST ---- a) They install fine without conflicts but produce a runtime error (see b) b) 2.4.22-1.2188.nptl. That kernel was current (FC1 + updates) at the time I reported the bug. > The files you added, cilc, monosn, the various .la files and > Mono.Security.Win32 are part of the tarball, but they do not need > to be released. That's why there are not in the original SPEC file > I published. I added the files to the spec file so that rpmbuild would create the package file instead of complaining about files installed but not in the spec file. If they don't need to be included, then the spec file's install section could be changed to make sure they don't get copied into the buildroot. Thanks for looking at these issues. I'm completely new to C#/.Net but I'm looking forward to using mono as a learning tool. ---- Additional Comments From duncan@ximian.com 2004-06-23 15:52:58 MST ---- I don't think we're gonna support the spec files. They are provided as hints for people who are interested in building their own packages. Unknown bug field "cf_op_sys_details" encountered while moving bug <cf_op_sys_details>Fedora FC1 with updates as of 5/11</cf_op_sys_details> Unknown operating system unknown. Setting to default OS "Other".