I compiled using the clang-error branch and now I get these errors:
In file included from phrase-extract/syntax-common/tree.h:99:
phrase-extract/syntax-common/tree-inl.h:76:1: error: missing 'typename' prior
to dependent type template name 'Tree<T>::PreOrderIter'
Tree<T>::PreOrderIter<V> &Tree<T>::PreOrderIter<V>::operator++() {
^
phrase-extract/syntax-common/tree-inl.h:103:1: error: missing 'typename' prior
to dependent type template name 'Tree<T>::PreOrderIter'
Tree<T>::PreOrderIter<V> Tree<T>::PreOrderIter<V>::operator++(int) {
^
phrase-extract/syntax-common/tree-inl.h:165:1: error: missing 'typename' prior
to dependent type template name 'Tree<T>::LeafIter'
Tree<T>::LeafIter<V> &Tree<T>::LeafIter<V>::operator++() {
^
phrase-extract/syntax-common/tree-inl.h:190:1: error: missing 'typename' prior
to dependent type template name 'Tree<T>::LeafIter'
The build log is attached.
I guess you are right in saying that I should probably just switch to Linux
instead of trying to get the compilation to work on the Mac.
Regards,
Hrafn Loftsson, Ph.D., www.ru.is/~hrafn<http://www.ru.is/~hrafn>
Dósent | Associate Professor
Tölvunarfræðideild | School of Computer Science
Háskólinn í Reykjavík | Reykjavik University
________________________________
Frá: Hieu Hoang <[email protected]>
Sent: 1. nóvember 2019 00:23
Til: Hrafn Loftsson
Afrit: moses-support
Efni: Re: [Moses-support] Building mosesdecoder on Mac OS
That's odd, it should be using clang rather than clang++ to compile cmd.c
I've created a branch to try and fix it
https://github.com/moses-smt/mosesdecoder/tree/clang-error
so git checkout clang-error and try to compile again
It looks like clang/osx build is starting to seriously diverge from gcc and
could be a long-term problem. I don't have time to deal with it anymore so you
may have to retreat to gcc on linux if there are lots more issues
On Thu, Oct 31, 2019, 12:55 PM Hrafn Loftsson <[email protected]<mailto:[email protected]>>
wrote:
Thanks for a quick reply.
Yes, I was planning to use moses only for command line experiments.
Following your advice, I uninstalled the xmlrpc-c library and now I build using:
./bjam --with-boost=/Users/hrafn/nlp/smt/boost_1_71_0/ -j4 toolset=clang
Unfortunately, I get a similar error:
clang-darwin.compile.c
symal/bin/clang-darwin-4.2.1/release/link-static/threading-multi/cmd.o
"clang++" -x c -O3 -std=c++0x -O3 -finline-functions -Wno-inline -Wall
-DKENLM_MAX_ORDER=6 -DMOSES_VERSION_ID=\"mmt-mvp-v0.12.1-2869-g0fef8ebf4\"
-DNDEBUG -DTRACE_ENABLE=1 -DWITH_THREADS -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES
-I"." -I"/Users/hrafn/nlp/smt/boost_1_71_0/include" -c -o
"symal/bin/clang-darwin-4.2.1/release/link-static/threading-multi/cmd.o"
"symal/cmd.c"
error: invalid argument '-std=c++0x' not allowed with 'C'
...failed clang-darwin.compile.c
symal/bin/clang-darwin-4.2.1/release/link-static/threading-multi/cmd.o...
Regards,
Hrafn Loftsson, Ph.D.,
www.ru.is/~hrafn<http://www.ru.is/~hrafn><http://www.ru.is/~hrafn>
Dósent | Associate Professor
Tölvunarfræðideild | School of Computer Science
Háskólinn í Reykjavík | Reykjavik University
________________________________
Frá: Hieu Hoang <[email protected]<mailto:[email protected]>>
Sent: 31. október 2019 19:33
Til: Hrafn Loftsson
Afrit: moses-support
Efni: Re: [Moses-support] Building mosesdecoder on Mac OS
It's been a few years since I've used osx.
My advice is
1. Don't include cmph library. It's only used by the compact phrase table
which crashes on osx
2. If you're only using the moses command line to do experiments, you don't
need the server so you don't need to include xmlrpc-c library.
On Thu, Oct 31, 2019, 12:17 PM Hrafn Loftsson
<[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> wrote:
Hi.
I'm trying to build moses on Mac OS Mojave (10.14.6).
I have downloaded and built boost with success.
According to http://www.statmt.org/moses/?n=Development.GetStarted, I need to
install xmlrpc-c independently, which I did using brew.
This is the exact command I use when trying to build moses:
./bjam --with-boost=/Users/hrafn/nlp/smt/boost_1_71_0/
--with-cmph=/usr/local/Cellar/xmlrpc-c/1.39.12/ -j4 toolset=clang
I have attached the build.log
When inspecting the log, I can see the following:
"clang++" -x c -O3 -I/usr/local/Cellar/xmlrpc-c/1.39.12/include -std=c++0x
-O3 -finline-functions -Wno-inline -Wall -DHAVE_CMPH -DHAVE_XMLRPC_C
-DKENLM_MAX_ORDER=6 -DMOSES_VERSION_ID=\"mmt-mvp-v0.12.1-2869-g0fef8ebf4\"
-DNDEBUG -DTRACE_ENABLE=1 -DWITH_THREADS -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES
-I"." -I"/Users/hrafn/nlp/smt/boost_1_71_0/include" -c -o
"symal/bin/clang-darwin-4.2.1/release/link-static/threading-multi/cmd.o"
"symal/cmd.c"
error: invalid argument '-std=c++0x' not allowed with 'C'
Does this mean that C code is being compiled here, with an invalid c++ option?
Regards,
Hrafn
_______________________________________________
Moses-support mailing list
[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>
http://mailman.mit.edu/mailman/listinfo/moses-support
build.log.gz
Description: build.log.gz
_______________________________________________ Moses-support mailing list [email protected] http://mailman.mit.edu/mailman/listinfo/moses-support
