Issues building LibreOffice 4.0.0.1

Henrik /KaarPoSoft henrik at kaarposoft.dk
Fri Jan 25 10:26:33 PST 2013


On 01/24/2013 10:43 PM, Henrik /KaarPoSoft wrote:
> On 01/24/2013 10:09 AM, Stephan Bergmann wrote:
>> On 01/24/2013 12:33 AM, Henrik /KaarPoSoft wrote:
>>> On 01/23/2013 04:54 PM, Stephan Bergmann wrote:
>>>> On 01/23/2013 08:31 AM, Henrik /KaarPoSoft wrote:
>>> I have attached the last 100 lines of build output leading to the error.
>>
>>> /tmp/cc7x3xJF.ltrans0.ltrans.o:(.data.rel.ro._ZTI27SvxForbiddenCharactersTable[_ZTI27SvxForbiddenCharactersTable]+0x10):
>>>
>>> undefined reference to `typeinfo for salhelper::SimpleReferenceObject'
>>> collect2: error: ld returned 1 exit status
>>> make[2]: ***
>>> [/home/kaarpux/kaarpux/linux/build/opt/libreoffice-4.0.0.1/workdir/unxlngx6.pro/LinkTarget/Library/libchartcontrollerlo.so]
>>>
>>> Error 1
>>
>> leaves me clueless.  I see nothing in chart2 that uses
>> SvxForbiddenCharactersTable (except for an apparently unused #include I
>> just killed on master with
>> <http://cgit.freedesktop.org/libreoffice/core/commit/?id=d71e8fb17bd008751909ef2fabc6ff4f1e2db187>
>>
>> "Unused #include."
>
> The error occurs during linking a lot of .o files.
>
> I have grepped for SvxForbiddenCharactersTable under
> workdir/unxlngx6.pro, and looked for the matches in the linking command.
>
> It seems that the reference to SvxForbiddenCharactersTable comes from
> chart2/source/controller/drawinglayer/DrawViewWrapper.o
>
> So this is exactly where you found the match also.
>
> I have now applied this specific patch, and will report back here after
> the build finishes.

Building 4.0.0.2 with your d71e8fb1 patch, no other patches,
no --with-system-*
results in
multiple definition of
com::sun::star::uno::Sequence<signed char>::s_pType
in CUT binaryurp_test-cache

Output attached

So it seems that you patch solved the salhelper problem.
Thank you very much!

However, it is still strange that I got the salhelper problem
in the first place, and apparently nobody else does.
And why are nobody else seeing the abovementioned multiple definition 
problem?

I certainly will not rule out problems in my build environment as
KaarPux http://kaarpux.kaarposoft.dk/ is my own creation.
However, I have build some 500 packages in this environment, and
things like linux kernel, gnome3, and firefox work like a charm,
as does LO 3.6.2.1

Looking at the gcc compiler, this is what I get:

gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/libexec/gcc/x86_64-unknown-linux-gnu/4.7.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4.7.2/configure --prefix= --enable-shared 
--enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu 
--enable-languages=c,c++ --disable-multilib --disable-bootstrap 
--with-system-zlib --with-pkgversion=KaarPux
Thread model: posix
gcc version 4.7.2 (KaarPux)

gcc -dumpspecs
output attached

It would be great if those of you who have done a successful build of 
4.0.0.{1,2} would reply with the output of
gcc -v
gcc -dumpspecs
as well as your ./configure settings.

Thank you very much in advance.

Any other comments or hints would of course also be much appreciated!

/Henrik

-------------- next part --------------
[build CUT] binaryurp_test-cache
S=/home/kaarpux/kaarpux/linux/build/opt/libreoffice-4.0.0.2 && O=$S/solver/unxlngx6.pro && W=$S/workdir/unxlngx6.pro &&  mkdir -p $W/CppunitTest/ && (LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"$O/lib":$O/lib/sqlite   DBGSV_ERROR_OUT=shell DISABLE_SAL_DBGBOX=t  STAR_RESOURCEPATH=$O/bin/   $O/bin/cppunit/cppunittester $W/LinkTarget/CppunitTest/libtest_binaryurp_test-cache.so --headless "-env:BRAND_BASE_DIR=file://$O/unittest/install"   > $W/CppunitTest/binaryurp_test-cache.test.log 2>&1 || (cat $W/CppunitTest/binaryurp_test-cache.test.log && echo; echo "Error: a unit test failed, please do one of:"; echo; echo "export DEBUGCPPUNIT=TRUE            # for exception catching"; echo "export GDBCPPUNITTRACE=\"gdb --args\" # for interactive debugging"; echo "export VALGRIND=memcheck            # for memory checking" ; echo "and retry." && false))
[build LNK] CppunitTest/libtest_binaryurp_test-unmarshal.so
S=/home/kaarpux/kaarpux/linux/build/opt/libreoffice-4.0.0.2 && O=$S/solver/unxlngx6.pro && W=$S/workdir/unxlngx6.pro &&  mkdir -p $W/LinkTarget/CppunitTest/ && g++ -shared -Wl,-z,noexecstack     -Wl,-z,defs  -fuse-linker-plugin -O2 -Wl,-rpath-link,/lib:/usr/lib -Wl,-z,combreloc  -L$S/solenv/unxlngx6/lib -L$O/lib -L$S/solenv/unxlngx6/lib -L//lib  -Wl,--hash-style=gnu  -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo -Wl,-Bsymbolic-functions  -Wl,-O1 -Wl,-S  $W/CxxObject/binaryurp/qa/test-unmarshal.o    `cat $W/LinkTarget/Library/binaryurp.uno.so.objectlist` -Wl,--start-group  -Wl,--end-group -Wl,--no-as-needed   -lcppunit -luno_cppu -luno_cppuhelpergcc3 -luno_sal -luno_salhelpergcc3 -o $W/LinkTarget/CppunitTest/libtest_binaryurp_test-unmarshal.so
/tmp/cc28UnMt.ltrans1.ltrans.o:(.bss._ZN3com3sun4star3uno8SequenceIaE7s_pTypeE[_ZN3com3sun4star3uno8SequenceIaE7s_pTypeE]+0x0): multiple definition of `com::sun::star::uno::Sequence<signed char>::s_pType'
/home/kaarpux/kaarpux/linux/build/opt/libreoffice-4.0.0.2/workdir/unxlngx6.pro/CxxObject/binaryurp/qa/test-unmarshal.o:(.bss._ZN3com3sun4star3uno8SequenceIaE7s_pTypeE[_ZN3com3sun4star3uno8SequenceIaE7s_pTypeE]+0x0): first defined here
collect2: error: ld returned 1 exit status
make: *** [/home/kaarpux/kaarpux/linux/build/opt/libreoffice-4.0.0.2/workdir/unxlngx6.pro/LinkTarget/CppunitTest/libtest_binaryurp_test-unmarshal.so] Error 1
kaarpux at KaarPuxHost$ 

-------------- next part --------------
gcc -dumpspecs
*asm:
%{m32:--32}  %{m32|mx32:;:--64}  %{mx32:--x32}  %{!mno-sse2avx:%{mavx:-msse2avx}} %{msse2avx:%{!mavx:-msse2avx}}

*asm_debug:
%{!g0:%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}} %{fdebug-prefix-map=*:--debug-prefix-map %*}

*asm_final:


*asm_options:
%{-target-help:%:print-asm-header()} %{v} %{w:-W} %{I*} %a %Y %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O}

*invoke_as:
%{!fwpa:   %{fcompare-debug=*|fdump-final-insns=*:%:compare-debug-dump-opt()}   %{!S:-o %|.s |
 as %(asm_options) %m.s %A }  }

*cpp:
%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}

*cpp_options:
%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w} %{f*} %{g*:%{!g0:%{g*} %{!fno-working-directory:-fworking-directory}}} %{O*} %{undef} %{save-temps*:-fpch-preprocess}

*cpp_debug_options:
%{d*}

*cpp_unique_options:
%{!Q:-quiet} %{nostdinc*} %{C} %{CC} %{v} %{I*&F*} %{P} %I %{MD:-MD %{!o:%b.d}%{o*:%.d%*}} %{MMD:-MMD %{!o:%b.d}%{o*:%.d%*}} %{M} %{MM} %{MF*} %{MG} %{MP} %{MQ*} %{MT*} %{!E:%{!M:%{!MM:%{!MT:%{!MQ:%{MD|MMD:%{o*:-MQ %*}}}}}}} %{remap} %{g3|ggdb3|gstabs3|gcoff3|gxcoff3|gvms3:-dD} %{!iplugindir*:%{fplugin*:%:find-plugindir()}} %{H} %C %{D*&U*&A*} %{i*} %Z %i %{fmudflap:-D_MUDFLAP -include mf-runtime.h} %{fmudflapth:-D_MUDFLAP -D_MUDFLAPTH -include mf-runtime.h} %{E|M|MM:%W{o*}}

*trad_capable_cpp:
cc1 -E %{traditional|traditional-cpp:-traditional-cpp}

*cc1:
%(cc1_cpu) %{profile:-p}

*cc1_options:
%{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}} %{!iplugindir*:%{fplugin*:%:find-plugindir()}} %1 %{!Q:-quiet} %{!dumpbase:-dumpbase %B} %{d*} %{m*} %{aux-info*} %{fcompare-debug-second:%:compare-debug-auxbase-opt(%b)}  %{!fcompare-debug-second:%{c|S:%{o*:-auxbase-strip %*}%{!o*:-auxbase %b}}}%{!c:%{!S:-auxbase %b}}  %{g*} %{O*} %{W*&pedantic*} %{w} %{std*&ansi&trigraphs} %{v:-version} %{pg:-p} %{p} %{f*} %{undef} %{Qn:-fno-ident} %{Qy:} %{-help:--help} %{-target-help:--target-help} %{-version:--version} %{-help=*:--help=%*} %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}} %{fsyntax-only:-o %j} %{-param*} %{fmudflap|fmudflapth:-fno-builtin -fno-merge-constants} %{coverage:-fprofile-arcs -ftest-coverage}

*cc1plus:


*link_gcc_c_sequence:
%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}

*link_ssp:
%{fstack-protector:}

*endfile:
%{Ofast|ffast-math|funsafe-math-optimizations:crtfastmath.o%s}    %{mpc32:crtprec32.o%s}    %{mpc64:crtprec64.o%s}    %{mpc80:crtprec80.o%s}    %{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s

*link:
%{!static:--eh-frame-hdr} %{m32|mx32:;:-m elf_x86_64}                    %{m32:-m elf_i386}                    %{mx32:-m elf32_x86_64}   %{shared:-shared}   %{!shared:     %{!static:       %{rdynamic:-export-dynamic}       %{m32:-dynamic-linker %{muclibc:/lib/ld-uClibc.so.0;:%{mbionic:/system/bin/linker;:/lib/ld-linux.so.2}}}       %{m32|mx32:;:-dynamic-linker %{muclibc:/lib/ld64-uClibc.so.0;:%{mbionic:/system/bin/linker64;:/lib64/ld-linux-x86-64.so.2}}}       %{mx32:-dynamic-linker %{muclibc:/lib/ldx32-uClibc.so.0;:%{mbionic:/system/bin/linkerx32;:/libx32/ld-linux-x32.so.2}}}}     %{static:-static}}

*lib:
%{pthread:-lpthread}    %{shared:-lc}    %{!shared:%{mieee-fp:-lieee} %{profile:-lc_p}%{!profile:-lc}}

*mfwrap:
 %{static: %{fmudflap|fmudflapth:  --wrap=malloc --wrap=free --wrap=calloc --wrap=realloc --wrap=mmap --wrap=mmap64 --wrap=munmap --wrap=alloca} %{fmudflapth: --wrap=pthread_create}} %{fmudflap|fmudflapth: --wrap=main}

*mflib:
%{fmudflap|fmudflapth: -export-dynamic}

*link_gomp:


*libgcc:
%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc --as-needed -lgcc_s --no-as-needed}%{shared-libgcc:-lgcc_s%{!shared: -lgcc}}}}

*startfile:
%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}}    crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}

*cross_compile:
0

*version:
4.7.2

*multilib:
. !m64 !m32;.:../lib64 m64 !m32;.:../lib !m64 m32;

*multilib_defaults:
m64

*multilib_extra:


*multilib_matches:
m64 m64;m32 m32;

*multilib_exclusions:


*multilib_options:
m64/m32

*linker:
collect2

*linker_plugin_file:


*lto_wrapper:


*lto_gcc:


*link_libgcc:
%D

*md_exec_prefix:


*md_startfile_prefix:


*md_startfile_prefix_1:


*startfile_prefix_spec:


*sysroot_spec:
--sysroot=%R

*sysroot_suffix_spec:


*sysroot_hdrs_suffix_spec:


*self_spec:


*cc1_cpu:
%{march=native:%>march=native %:local_cpu_detect(arch)   %{!mtune=*:%>mtune=native %:local_cpu_detect(tune)}} %{mtune=native:%>mtune=native %:local_cpu_detect(tune)}

*link_command:
%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S:    %(linker) %{!fno-use-linker-plugin:%{flto|flto=*|fuse-linker-plugin:     -plugin %(linker_plugin_file)     -plugin-opt=%(lto_wrapper)     -plugin-opt=-fresolution=%u.res     %{!nostdlib:%{!nodefaultlibs:%:pass-through-libs(%(link_gcc_c_sequence))}}     }}%{flto|flto=*:%<fcompare-debug*}     %{flto} %{flto=*} %l %{pie:-pie} %X %{o*} %{e*} %{N} %{n} %{r}    %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}}    %{static:} %{L*} %(mfwrap) %(link_libgcc) %o    %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)}    %{fgnu-tm:%:include(libitm.spec)%(link_itm)}    %(mflib)  %{fsplit-stack: --wrap=pthread_create}    %{fprofile-arcs|fprofile-generate*|coverage:-lgcov}    %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}}    %{!nostdlib:%{!nostartfiles:%E}} %{T*} }}}}}}




More information about the LibreOffice mailing list