Bug 427169

Summary: icu fail to build from source
Product: [Fedora] Fedora Reporter: Praveen A <pravi.a>
Component: icuAssignee: Caolan McNamara <caolanm>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 6CC: fedora, jonstanley
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 3.8-3 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-01-01 23:27:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Praveen A 2008-01-01 21:12:42 UTC
Description of problem:
icu source rpm is not buildable

Version-Release number of selected component (if applicable):
3.6-4

How reproducible:
Download the icu source rpm, install, run rpmbuild -ba icu.spec

Steps to Reproduce:
1. yumdownloader --source icu
2. rpm -ivh icu*.rpm
3.rpmbuild -ba /usr/src/redhat/SPECS/icu.spec
  
Actual results:
It fails in some tests as shown below

--[OK]  ---/ucsdetst/TestC1Bytes
   ---[OK]  ---/ucsdetst/TestInputFilter
   ---[OK]  ---/ucsdetst/TestErrorChaining

SUMMARY:
******* [Total error count:     3]
 Errors in
   [/tsformat/cnumtst/TestSignificantDigits]
   [/tsformat/cdtrgtst/Test4059917]
Elapsed Time: 00:03:22.000
make[2]: *** [check-local] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/icu/source/test/cintltst'
make[1]: *** [check-recursive] Error 2
make[1]: Leaving directory `/usr/src/redhat/BUILD/icu/source/test'
make: *** [check-recursive] Error 2
make: Leaving directory `/usr/src/redhat/BUILD/icu/source'
error: Bad exit status from /var/tmp/rpm-tmp.70199 (%check)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.70199 (%check)
INIT: version 2.86 reloading

[pravi@localhost redhat]$


Expected results:

icu rpms build correctly

Additional info:

Comment 1 Jon Stanley 2008-01-01 23:27:24 UTC
3.8-3 builds fine for me in mock.  Closing CURRENTRELEASE,

Comment 2 Praveen A 2008-01-05 23:56:39 UTC
I know 3.8 builds fine on F8 and I have built it. This was a special request for
supporting someone with 150 FC6 machines which they can't upgrade to FC8. 

I just want to build a patched version of icu on FC6. The patch and SRPMS are here
http://download.savannah.nongnu.org/releases/smc/fedora/8/

And I had no problems building the 3.6 version with the patch on debian etch and
lenny.

Does a 3.8 version of icu satisfy all icu dependencies on F8?

It is not a solution for me. Anyway thanks.

Comment 3 Praveen A 2008-01-05 23:58:03 UTC
Sorry about the version confusion, what I meant was,

Does a 3.8 version of icu satisfy all icu dependencies on FC6?

Comment 4 Caolan McNamara 2008-01-06 12:09:16 UTC
Hmm, I don't think it will. I think anything linked against 3.6 will have to be
recompiled to link against 3.8 as the symbol prefix changed from something like
icu36 to icu38

Comment 5 Praveen A 2008-01-06 23:08:25 UTC
I recompiled 3.8 on FC6 and I was not able to upgrade icu as openoffice.org-core
was linked against 3.6. How can I get a list of all packages linked against icu
3.6 which I can try recompiling with 3.8. OpenOffice is obvious choice and it is
something I'm not looking forward to :-( This seems the best option now
(recompile all icu3.6 depending packages to use icu3.8). I hope I won't see
other surprises on the way.

Comment 6 Praveen A 2008-01-08 10:30:51 UTC
But that hope was far fetched :-( OOo 2.0.4 failed to build with icu 3.8. It is
disappointing to see it is requiring icu 3.6 and a higher version could not help.

So is there any other way I could get a patched icu build on FC6 and use OOo
with it? Should I try building OOo 2.3 from F8 on FC6? Would all the
dependencies fail?

hmm now I understand why people want long term support !!! I always wondered why
would any one still use an old version and stick to it when you have a better
new version!

=============
Building project i18npool
=============
/usr/src/redhat/BUILD/OOD680_m5/i18npool/source/breakiterator
dmake: Executing shell macro: ls data/*.txt
genbrk -r data/char_ta.txt -o ../../unxlngi6.pro/misc/char_ta.brk
genbrk: error while loading shared libraries: libicutu.so.36: cannot open shared
object file: No such file or directory
dmake:  Error code 127, while making '../../unxlngi6.pro/misc/char_ta.brk'
'---* tg_merge.mk *---'

ERROR: Error 65280 occurred while making
/usr/src/redhat/BUILD/OOD680_m5/i18npool/source/breakiterator
error: Bad exit status from /var/tmp/rpm-tmp.16295 (%build)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.16295 (%build)


Comment 7 Praveen A 2008-01-08 10:32:54 UTC
Or can I trick OOo to believe 36 is there by symlinking 38?

Comment 8 Praveen A 2008-01-11 09:53:29 UTC
Finally gotten around to compiling 3.6 itself with the patch. But you would
never expect this from icu, it failed tests because the locale was ml_IN !!! any
other package you can understand but icu?? it is supposed to add unicode
support, right? Anyway now I have the solution.

LANG=en_US rpmbuild -ba SPECS/icu.spec

did the trick. The idea came to me when I saw some Malayalam numbers in a failed
test case (it tried to compare some values with Malayalam numbers or something
stupid - but it does not happen in 3.8 so icu has learned it). Thanks a lot Jon
and Caolan. Your comments kept me going. 

PS: The OOo build ate all my harddrive :-( (also it took ages with KVM on the F8
box) Now happy to have it removed finally.