Re: [greenstone-users] multiply defined symbols

From John R. McPherson
DateTue, 07 Dec 2004 17:27:59 +1300
Subject Re: [greenstone-users] multiply defined symbols
In-Reply-To (CFC3ED3DA039BCDF8A71A648-ilrt-beech-ilrt-bris-ac-uk)
On Mon, 2004-12-06 at 23:19, Virginia Knight wrote:
> I'm getting messages such as the following in
> /mnt/disk1/cmvhk/gsdl/src/recpt:
>
> ld: fatal: symbol `unicode_strnlen' is multiply defined:
> (file ../../packages/mg/lib/libmg.a(unitool.o) and file
> ../mgpp/lib/libmg.a(unitool.o));
>
> As before, I'm using gcc 3.4.2 on Solaris 2.5.

In /mnt/disk1/cmvhk/gsdl/src/mgpp/Makefile and Makefile.in,
try modifying line 59 so where it has:
#####
.SUFFIXES: .cpp .o
.cpp.o:
$(CXXCOMPILE) -D__cplusplus $<
#####
try replacing $(COMPILE) with $(CXXCOMPILE).

(The problem is that there is a function with the same name
in the mg code written in C, and the mgpp code written in C++).

John McPherson