Hi Charles and Nicola,

I had the same issue with gcc 4.4.3 on Ubuntu 10.04 and the problem
was fixed by adding the following include directive at the beginning of
the files that cannot be compiled:

#include <cstring>

Hope this helps,
Selcuk

On Wed, 2010-11-03 at 00:12 -0400, Charles Chiu wrote:
> Dear Nicola,
>   First of all, I would like to thank you for your quick response and
> the
> information you provide. I now try to compile the 5.50.01 and
> encounter some
> error during make command. I tried to search online to find some
> possible
> answers before sending you this email for help. However, I didn't have
> much
> luck. Would you be kind enough to help me out with this error? Thank
> you!
> 
> cc...@cchiu-laptop:~/tools/irstlm-5.50.01$ make
> make  all-recursive
> make[1]: Entering directory `/home/cchiu/tools/irstlm-5.50.01'
> Making all in src
> make[2]: Entering directory `/home/cchiu/tools/irstlm-5.50.01/src'
> if /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H
> -I. -I.
> -I..   -DTRACE_ENABLE=1 -W -Wall -ffor-scope -D_FILE_OFFSET_BITS=64
> -D_LARGE_FILES  -DMYCODESIZE=3 -g -O2 -MT lmmacro.lo -MD -MP -MF
> ".deps/lmmacro.Tpo" -c -o lmmacro.lo lmmacro.cpp; \
>     then mv -f ".deps/lmmacro.Tpo" ".deps/lmmacro.Plo"; else rm -f
> ".deps/lmmacro.Tpo"; exit 1; fi
>  g++ -DHAVE_CONFIG_H -I. -I. -I.. -DTRACE_ENABLE=1 -W -Wall
> -ffor-scope
> -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -DMYCODESIZE=3 -g -O2 -MT
> lmmacro.lo -MD
> -MP -MF .deps/lmmacro.Tpo -c lmmacro.cpp -o lmmacro.o
> In file included from lmmacro.cpp:31:
> htable.h: In member function 'void htable<T>::map(std::ostream&,
> int)':
> htable.h:225: error: there are no arguments to 'memset' that depend on
> a
> template parameter, so a declaration of 'memset' must be available
> htable.h:225: note: (if you use '-fpermissive', G++ will accept your
> code, but
> allowing the use of an undeclared name is deprecated)
> htable.h:240: error: there are no arguments to 'memset' that depend on
> a
> template parameter, so a declaration of 'memset' must be available
> make[2]: *** [lmmacro.lo] Error 1
> make[2]: Leaving directory `/home/cchiu/tools/irstlm-5.50.01/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/cchiu/tools/irstlm-5.50.01'
> make: *** [all] Error 2
> cc...@cchiu-laptop:~/tools/irstlm-5.50.01$
> 
> 
> 
> 
> ----- Original Message ----
> From: Nicola Bertoldi <[email protected]>
> To: Charles Chiu <[email protected]>
> Cc: [email protected]
> Sent: Tue, November 2, 2010 2:53:36 AM
> Subject: Re: [Moses-support] LanguageModelIRST.cpp errors
> 
> Dear Charles,
> 
> probably you are using an old release of IRSTLM
> please download the new one (5.50.01) from FBK website
> http://hlt.fbk.eu/en/irstlm
> 
> as suggested during the compilation of Moses
> 
> Hope this solve your problem
> 
> bet regards,
> Nicola Bertoldi
> 
> 
> 
> On Nov 2, 2010, at 6:10 AM, Charles Chiu wrote:
> 
> > Hi,
> >             I was able to by pass the gcc4 makefile issue i had
> while
> compiling
> > SRILM and moses configuration utility actually is able to finish its
> task.
> > However, I am encountering a new issue here. I was trying to compile
> Moses and
> > got the following error log when compiling with "make -j 2" command.
> > Could someone help me to figure out what is going on with this
> issue? By the
> > way, I really appreciate the reply for my last question. It really
> helps a
> lot!
> >
> > Thanks!
> >
> > Error Log:
> >
> > In file included from Hypothesis.h:33,
> >                  from SentenceStats.h:30,
> >                  from StaticData.h:43,
> >                  from LanguageModelIRST.cpp:38:
> > PhraseDictionaryMemory.h:66: warning: unused parameter ‘outColl’
> > LanguageModelIRST.cpp: In member function ‘virtual bool
> > Moses::LanguageModelIRST::Load(const std::string&,
> Moses::FactorType,
> size_t)’:
> > LanguageModelIRST.cpp:123: warning: comparison of unsigned
> expression >= 0 is
> > always true
> > LanguageModelIRST.cpp:126: error: ‘class lmtable’ has no member
> named
> > ‘init_caches’
> > LanguageModelIRST.cpp: In member function ‘virtual float
> > Moses::LanguageModelIRST::GetValue(const std::vector<const
> Moses::Word*,
> > std::allocator<const Moses::Word*> >&, const void**, unsigned int*)
> const’:
> > LanguageModelIRST.cpp:196: warning: comparison of unsigned
> expression < 0 is
> > always false
> > LanguageModelIRST.cpp:213: error: no matching function for call to
> > ‘lmtable::clprob(int [20], size_t&, NULL, NULL, char**, unsigned
> int*)’
> > /usr/local/include/lmtable.h:267: note: candidates are: virtual
> double
> > lmtable::clprob(ngram)
> > LanguageModelIRST.cpp: In function ‘bool
> Moses::LMCacheCleanup(size_t,
> >size_t)’:
> > LanguageModelIRST.cpp:224: warning: comparison between signed and
> unsigned
> > integer expressions
> > make[3]: *** [LanguageModelIRST.lo] Error 1
> > make[2]: *** [all] Error 2
> > make[1]: *** [all-recursive] Error 1
> > make: *** [all] Error 2
> >
> >
> >
> >
> > _______________________________________________
> > Moses-support mailing list
> > [email protected]
> > http://mailman.mit.edu/mailman/listinfo/moses-support
> 
> 
>      
> 
> _______________________________________________
> Moses-support mailing list
> [email protected]
> http://mailman.mit.edu/mailman/listinfo/moses-support
> 
> 


_______________________________________________
Moses-support mailing list
[email protected]
http://mailman.mit.edu/mailman/listinfo/moses-support

Reply via email to