[CLN-list] Multiple definition errors when natively compiling CLN
1.1.13 with GCC 3.4 for ARM target
Simon Pickering
S.G.Pickering at bath.ac.uk
Wed Feb 28 15:50:03 CET 2007
> > .libs/cl_I_ring.o: In function `cln::zerop(cln::cl_I
> > const&)':cl_I_ring.cc:(.text._ZN3cln5zeropERKNS_4cl_IE[cln::zerop(cln:
> > :cl_I
> > const&)]+0x0): multiple definition of `cln::zerop(cln::cl_I const&)'
> > .libs/cl_I_zerop.o:cl_I_zerop.cc:(.text+0x0): first defined here
>
> That looks like a compiler bug. The C++ rules for 'inline'
> are summarized in [1], and the code in include/cln/integer.h
> and src/integer/cl_I.h follows these rules.
Okay.
> > Is there any way around this problem? Any other -finline*/--param
> > options I could try, etc., or any other ideas?
>
> - Specify --disable-shared?
I tried --disable-shared, and it will then compile the static library. But this
doesn't really solve things for me as then the problem just occurs in whatever I
want to link with the cln static library (in this case Qalculate!).
> - Try a newer compiler, such as gcc-4.1.2?
I will do this once there's one available that targets the Nokia N800.
Thanks,
Simon
More information about the CLN-list
mailing list