problems compiling on alpha

Andreas Stolcke stolcke at
Fri Feb 4 11:59:33 PST 2005

I don't have access to an Alpha system anymore.

Your linker might require a flag to instruct it to merge multiple
definitions of the same symbol.  On Solaris that is ld -z muldefs,
and you would invoke the compiler with


Check your ld man page to find something similar.


In message <270593C43CEE6E42A84D7F860469E9120290C7 at>you w
> I attempting to compile srilm on the following machine:
> Machine: HP/Compaq Alpha GS1280
> OS: Tru64 Unix
> Compiler: gcc 3.4.3
> Make:  GNU make 3.80
> Everything compiles cleanly except the "ngram" executable (which, of
> course, is one that I need to use).  
> This is the error it returns during the make:
> g++ -mieee-with-inexact -Wreturn-type -Wimplicit -DINSTANTIATE_TEMPLATES
> -I~/tcl/generic -I. -I/home4/u12/dtwitche/srilm/include   -u matherr
> -L/home4/u12/dtwitche/srilm/lib/alpha  -g3 -O2 -o ../bin/alpha/ngram
> ../obj/alpha/ngram.o -L/home4/u12/dtwitche/srilm/lib/alpha
> ../obj/alpha/liboolm.a -lm -lflm -ldstruct -lmisc -L~/tcl/unix -ltcl -lm
> 2>&1 | c++filt
> /usr/bin/ld:
> ../obj/alpha/liboolm.a(CacheLM.o): LHash<unsigned int,
> double>::removedData: multiply defined
> ../obj/alpha/liboolm.a(CacheLM.o): global constructors keyed to
> _ZN5LHashIjdE11removedDataE: multiply defined
> ../obj/alpha/liboolm.a(CacheLM.o): global destructors keyed to
> _ZN5LHashIjdE11removedDataE: multiply defined
> ../obj/alpha/liboolm.a(CacheLM.o):
> _GLOBAL__F__ZN5LHashIjdE11removedDataE: multiply defined
> collect2: ld returned 1 exit status
> Any ideas on how to resolve this?
> Thanks,
> Doug

More information about the SRILM-User mailing list