Re: [Moses-support] Building mosesdecoder on Mac OS
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::PreOrderIter' Tree::PreOrderIter ::PreOrderIter::operator++() { ^ phrase-extract/syntax-common/tree-inl.h:103:1: error: missing 'typename' prior to dependent type template name 'Tree::PreOrderIter' Tree::PreOrderIter Tree::PreOrderIter::operator++(int) { ^ phrase-extract/syntax-common/tree-inl.h:165:1: error: missing 'typename' prior to dependent type template name 'Tree::LeafIter' Tree::LeafIter ::LeafIter::operator++() { ^ phrase-extract/syntax-common/tree-inl.h:190:1: error: missing 'typename' prior to dependent type template name 'Tree::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 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 mailto:hr...@ru.is>> 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 mailto:hieuho...@gmail.com>> 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 mailto:hr...@ru.is><mailto:hr...@ru.is<mailto:hr...@ru.is>>> 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
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 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> > Dósent | Associate Professor > Tölvunarfræðideild | School of Computer Science > Háskólinn í Reykjavík | Reykjavik University > > > > Frá: Hieu Hoang > 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 hr...@ru.is>> 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 > Moses-support@mit.edu<mailto:Moses-support@mit.edu> > http://mailman.mit.edu/mailman/listinfo/moses-support > ___ Moses-support mailing list Moses-support@mit.edu http://mailman.mit.edu/mailman/listinfo/moses-support
Re: [Moses-support] Building mosesdecoder on Mac OS
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> Dósent | Associate Professor Tölvunarfræðideild | School of Computer Science Háskólinn í Reykjavík | Reykjavik University Frá: Hieu Hoang 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 mailto:hr...@ru.is>> 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 Moses-support@mit.edu<mailto:Moses-support@mit.edu> http://mailman.mit.edu/mailman/listinfo/moses-support ___ Moses-support mailing list Moses-support@mit.edu http://mailman.mit.edu/mailman/listinfo/moses-support
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 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 > Moses-support@mit.edu > http://mailman.mit.edu/mailman/listinfo/moses-support > ___ Moses-support mailing list Moses-support@mit.edu http://mailman.mit.edu/mailman/listinfo/moses-support