ok. PhraseDictionaryCompact is popular enough, Eclipse now compile it
with this phrase table.
You must softlink cmph to the root of your moses source code directory:
cd ..../mosesdecoder
ln -s /Users/hieu/workspace/cmph-2.0 cmph
Re-import the eclipse project files into your workspace and recompile
On 08/09/2015 18:18, Yuqi Zhang wrote:
Dear Moses Developers,
I am building the debug version of moses on my Mac laptop (OS 10.10.4)
with Eclipse CDT (Luna).
I can successfully built and debug the standard version with
PhraseDictionMemory.
However, when I want to debug the PhraseDictionaryCompact by invoking
the conditional compiling symbol "HAVE_CMPH", I got link errors (e.g.
on moses-cmd/):
------------------------------------------------------------------------------------------------------------------------
Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.4.0
Thread model: posix
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld"
-demangle -dynamic -arch x86_64 -macosx_version_min 10.10.0 -o
moses-cmd
-L/Users/d064586/Dev/moses-RELEASE-3.0/mosesbuild/moses/contrib/other-builds/../../boost/lib64
-L/Users/d064586/Dev/moses-RELEASE-3.0/mosesbuild/moses/contrib/other-builds/moses/Debug
-L/Users/d064586/Dev/moses-RELEASE-3.0/mosesbuild/moses/contrib/other-builds/lm/Debug
-L/Users/d064586/Dev/moses-RELEASE-3.0/mosesbuild/moses/contrib/other-builds/OnDiskPt/Debug
-L/Users/d064586/Dev/moses-RELEASE-3.0/mosesbuild/moses/contrib/other-builds/util/Debug
-L/Users/d064586/Dev/moses-RELEASE-3.0/mosesbuild/moses/contrib/other-builds/search/Debug
-L/opt/local/lib ./Main.o -lmoses -lsearch -lOnDiskPt -llm -lutil
-lboost_iostreams -lboost_serialization -lboost_system -lboost_thread
-lboost_filesystem -lpthread -lz -lbz2 -ldl -lc++ -lSystem
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.1.0/lib/darwin/libclang_rt.osx.a
Undefined symbols for architecture x86_64:
"Moses::PhraseDictionaryCompact::PhraseDictionaryCompact(std::string
const&)", referenced from:
Moses::(anonymous
namespace)::DefaultFeatureFactory<Moses::PhraseDictionaryCompact>::Create(std::string
const&) in libmoses.a(Factory.o)
"Moses::LexicalReorderingTableCompact::CheckAndLoad(std::string
const&, std::vector<unsigned long, std::allocator<unsigned long> >
const&, std::vector<unsigned long, std::allocator<unsigned long> >
const&, std::vector<unsigned long, std::allocator<unsigned long> >
const&)", referenced from:
Moses::LexicalReorderingTable::LoadAvailable(std::string const&,
std::vector<unsigned long, std::allocator<unsigned long> > const&,
std::vector<unsigned long, std::allocator<unsigned long> > const&,
std::vector<unsigned long, std::allocator<unsigned long> > const&) in
libmoses.a(LexicalReorderingTable.o)
... ...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
------------------------------------------------------------------------------------------------------------------------
I have worked on this for several days, but cannot fix it.
The full log files is attached.
Any suggestions or hints are welcome!
Thank you very much!
Best regards,
Yuqi Zhang
_______________________________________________
Moses-support mailing list
Moses-support@mit.edu
http://mailman.mit.edu/mailman/listinfo/moses-support
--
Hieu Hoang
http://www.hoang.co.uk/hieu
_______________________________________________
Moses-support mailing list
Moses-support@mit.edu
http://mailman.mit.edu/mailman/listinfo/moses-support