Search SRILM-USER Archives

Match: Format: Sort by:
Search:

Trouble building srilm project (macosx)

From: P McIlroy <pmcilroy at ADDRESS HIDDEN>
Date: Mon, 28 Nov 2005 20:39:29 -0800

--Apple-Mail-4-313146649
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
charset=US-ASCII;
format=flowed

I joined this group in hopes of finding some help on the MacOS compile.

I'm getting a handful of uninstantiated templates in the out-of-the-box
compile on OS X 10.3.9, with compiler version:

gcc version 3.3 20030304 (Apple Computer, Inc. build 1666)

The undefined functions are, in various executables:

FNgramCounts<unsigned int>::FNgramCounts(FactoredVocab&,
FNgramSpecs<unsigned int>&)
Map2<unsigned int, unsigned int, double>::clear()
NgramCounts<unsigned int>::NgramCounts(Vocab&, unsigned int)

I was able to 'fix' ngram-counts by adding

#include "NgramStats.cc"

to the main program.

The same fix does not work for ngram.cc.

Additional investigation shows that the instance file

NGramStatsInt.o

does not include an instantiation of the NGramCount constructor.

Other attempts like adding this to the main program:

static template NGramCounts<unsigned>;

lead to multiple definition errors in the linker.

Is there a known configuration or compiler option that works on OS X
10.3?  Or will upgrading to 10.4 fix the problems?

thanks,

Peter McIlroy

Begin forwarded message:

> From: P McIlroy <pmcilroy at ADDRESS HIDDEN>
> Date: November 28, 2005 3:17:14 PM PST
> To: stolcke at ADDRESS HIDDEN
> Subject: Fwd: Trouble building your srilm project (macosx)
>
> I was able to compile one of the failed executables (ngram-count), but
> it required adding
>
> #include "NgramStats.cc"
>
> to the end of the list of includes in the main source file
> ngram-stats.cc.  (This is not the preferred way to force compilation
> of templates, but it's working for now.)  I also tried forcing
> instantiation by creating a NgramStats_inst.cc file, but this led to
> horrible multiple definitions.
>
> I'm still getting a warning for multiple definitions of _qsort(), but
> I don't think this is a problem.
>

--Apple-Mail-4-313146649
Content-Transfer-Encoding: 7bit
Content-Type: text/enriched;
charset=US-ASCII

I joined this group in hopes of finding some help on the MacOS compile.

I'm getting a handful of uninstantiated templates in the
out-of-the-box compile on OS X 10.3.9, with compiler version:

gcc version 3.3 20030304 (Apple Computer, Inc. build 1666)

The undefined functions are, in various executables:

FNgramCounts<<unsigned int>::FNgramCounts(FactoredVocab&,
FNgramSpecs<<unsigned int>&)

Map2<<unsigned int, unsigned int, double>::clear()

NgramCounts<<unsigned int>::NgramCounts(Vocab&, unsigned int)

I was able to 'fix' ngram-counts by adding

#include "NgramStats.cc"

to the main program.

The same fix does not work for ngram.cc.

Additional investigation shows that the instance file

NGramStatsInt.o

does not include an instantiation of the NGramCount constructor.

Other attempts like adding this to the main program:

static template NGramCounts<<unsigned>;

lead to multiple definition errors in the linker.

Is there a known configuration or compiler option that works on OS X
10.3?  Or will upgrading to 10.4 fix the problems?  

thanks,

Peter McIlroy

Begin forwarded message:

<excerpt><bold><color><param>0000,0000,0000</param>From:
</color></bold>P McIlroy <<pmcilroy at ADDRESS HIDDEN>

<bold><color><param>0000,0000,0000</param>Date:
</color></bold>November 28, 2005 3:17:14 PM PST

<bold><color><param>0000,0000,0000</param>To:
</color></bold>stolcke at ADDRESS HIDDEN

<bold><color><param>0000,0000,0000</param>Subject: </color>Fwd:
Trouble building your srilm project (macosx)

</bold>

I was able to compile one of the failed executables (ngram-count), but
it required adding

#include "NgramStats.cc"

to the end of the list of includes in the main source file
ngram-stats.cc.  (This is not the preferred way to force compilation
of templates, but it's working for now.)  I also tried forcing
instantiation by creating a NgramStats_inst.cc file, but this led to
horrible multiple definitions.

I'm still getting a warning for multiple definitions of _qsort(), but
I don't think this is a problem.

</excerpt>
--Apple-Mail-4-313146649--

Click here to go to the SRILM home page.