Opened 10 years ago

Closed 10 years ago

#4931 closed enhancement (fixed)

libreoffice-4.2.3.3

Reported by: Fernando de Oliveira Owned by: Fernando de Oliveira
Priority: normal Milestone: 7.6
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description

Change History (9)

comment:1 by Fernando de Oliveira, 10 years ago

Owner: changed from blfs-book@… to Fernando de Oliveira
Status: newassigned

comment:2 by Fernando de Oliveira, 10 years ago

I am stuck with the error:

...
[build CUT] sax_parser
[build CHK] sax
[build DEP] LNK:CppunitTest/libtest_sc_ucalc.so
[build LNK] CppunitTest/libtest_sc_ucalc.so
/tmp/libreoffice-4.2.3.3/workdir/CxxObject/sc/source/core/tool/interpr1.o: 
In function `lcl_getScriptClass(unsigned long)':
interpr1.cxx:(.text+0x411d): undefined reference to `ublock_getCode_52'
collect2: error: ld returned 1 exit status
/tmp/libreoffice-4.2.3.3/solenv/gbuild/LinkTarget.mk:452: 
recipe for target 
'/tmp/libreoffice-4.2.3.3/workdir/LinkTarget/CppunitTest/libtest_sc_ucalc.so' 
failed
make[1]: *** [/tmp/libreoffice-4.2.3.3/workdir/LinkTarget/CppunitTest/libtest_sc_ucalc.so] 
Error 1
Makefile:217: recipe for target 'build' failed
make: *** [build] Error 2

comment:3 by Armin K, 10 years ago

Have you built system boost with ICU support? Or system raptor with ICU support? I think error got away when I disabled system versions of those two, but it seems it's boost specific.

comment:4 by Fernando de Oliveira, 10 years ago

Thank you very for the comment.

No raptor installed.

Just checked that icu support is automatic in boost. Rebuilding it using

./bootstrap.sh --prefix=/usr --without-icu

I am optimistic with that.

Will report back when I get a result.

comment:5 by bdubbs@…, 10 years ago

A quick google search for ublock_getCode_52 indicates that it should be in icu. You might want to investigate that. Since the current version of icu is ICU-53.1, the 52 in the above reference makes me suspicious.

comment:6 by Armin K, 10 years ago

System ICU is 53.1, LibreOffice bundled one is 52.1. Linker is probably picking some -licu* from boost, which is probably 53.1, but also some from bundled one which are 52.1, creating conflicts in symbol versions.

At this time, I don't know of a way to build LO with ICU 53.1. Upstream is aware.

comment:7 by Fernando de Oliveira, 10 years ago

Failed in the same way. I am now building with bundled boost, if fails, next try will be with bundled clucene.

comment:8 by Fernando de Oliveira, 10 years ago

OK with bundled both boost and icu. No problems with clucene.

Problem is that system boost, even bootstrapping --without-icu, still links to it. I will need to investigate a little further, before disabling system-boost in LO.

Results below show linking to icu (tried first with ldd, the used scanelf to confirm it was direct).

$ scanelf -BF "%f: %n" /usr/lib/libboost_*.so | grep -i icu
libboost_graph.so: 
libboost_regex.so.1.55.0,libicuuc.so.53,libicui18n.so.53,libicudata.so.53,
librt.so.1,libstdc++.so.6,libm.so.6,libgcc_s.so.1,libpthread.so.0,libc.so.6

libboost_locale.so: 
libboost_thread.so.1.55.0,libboost_chrono.so.1.55.0,libboost_system.so.1.55.0,
libicuuc.so.53,libicui18n.so.53,libicudata.so.53,librt.so.1,libstdc++.so.6,
libm.so.6,libgcc_s.so.1,libpthread.so.0,libc.so.6

libboost_regex.so: 
libicuuc.so.53,libicui18n.so.53,libicudata.so.53,librt.so.1,libstdc++.so.6,
libm.so.6,libgcc_s.so.1,libpthread.so.0,libc.so.6

Will investigate tomorrow.

comment:9 by Fernando de Oliveira, 10 years ago

Resolution: fixed
Status: assignedclosed

Thanks, Bruce and Armin.

I did try yesterday and today to find how to build boost without icu, without success.

Disabled system-boost (had previously, when updating icu, disabled system icu)

When solutions are found, we can enable each or both.

Fixed at r12982.

Note: See TracTickets for help on using tickets.