You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@mesos.apache.org by Tom Arnfeld <to...@duedil.com> on 2014/01/30 20:40:06 UTC
Compiling Mesos on Mac OSX Mountain Lion 10.9
I’m trying to get going with Mesos to do a bit of exploration and i’m having trouble compiling any version of Mesos on Mac OSX. I’m only looking to use the python binding (not actually run a mesos master/slave) on OSX to talk to a remote Mesos/ZK cluster i’ve got setup.
I’ve sifted through a bunch of errors, and hit a wall with one I can’t seem to solve. I’m using GCC 4.2 (`brew install gcc4.2`) as there are issues with the GCC included in Xcode. I’ve also had to switch to using protobuf 2.5.0 in `mesos/3rdparty/libprocess/3rdparty.
> git clone https://git-wip-us.apache.org/repos/asf/mesos.git
> cd mesos
> git checkout git checkout 0.16.0-rc4
> ./bootstrap
> CC="gcc-4.2" CXXFLAGS="-std=c++11" ./configure
> make
########################################################################
/bin/sh ./libtool --tag=CXX --mode=compile g++ -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I./include -I./3rdparty/stout/include -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15 -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c -o libprocess_la-latch.lo `test -f 'src/latch.cpp' || echo './'`src/latch.cpp
libtool: compile: g++ -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" "-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I./include -I./3rdparty/stout/include -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15 -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c src/latch.cpp -fno-common -DPIC -o libprocess_la-latch.o
In file included from src/latch.cpp:3:
./include/process/process.hpp:10:10: fatal error: 'tr1/functional' file not found
#include <tr1/functional>
^
1 error generated.
####################################
The call to `make` fails with the above output. I managed to successfully install thrift version 0.9.1using brew (though unrelated) which makes me think it might not be an issue with thrift, but with the mesos build process?
I can attach my Makefile if that’s of any help, Thanks.
—
Tom Arnfeld
Developer // DueDil
Re: Compiling Mesos on Mac OSX Mountain Lion 10.9
Posted by Tom Arnfeld <to...@duedil.com>.
You’re right. I also and to recompile the version of gcc I installed with homebrew to include support for c++. Going to dump the install process below incase anyone else runs into this.
I still had to replace protobufs (but that’s an issue already resolved in JIRA).
(Switched to 4.3 since it seems homebrew/versions doesn’t have 4.2)
> brew tap homebrew/versions
> brew install homebrew/versions/gcc4.3 --enable-cxx
> ./bootstrap
> CC=“gcc-4.3” CXX=“g++-4.3” ./configure
> make
Thanks for the pointers! :)
—
Tom Arnfeld
Developer // DueDil
On 30 Jan 2014, at 20:03, Benjamin Mahler <be...@gmail.com> wrote:
> Did you intend to set CC and CXX? CC is the C compiler, CXX is the C++ compiler.
>
> E.g.
>
> CC="gcc-4.2" CXX="g++-4.2" ./configure
>
>
> On Thu, Jan 30, 2014 at 11:52 AM, Tom Arnfeld <to...@duedil.com> wrote:
> I’ve removed that flag and run `make clean` but now I get back to the errors with Apple’s GCC compiler...
>
> > make clean
> > CC="gcc-4.2" ./configure
> > make
>
> As far as the protobuf upgrade goes, I noticed in JIRA that was release into 0.17.0 – I can’t seem to find the source for that version anywhere?
>
> #####################################################################
>
> g++ -DHAVE_CONFIG_H -I. -I./src -I./src -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2 -MT symbolize_unittest-symbolize_unittest.o -MD -MP -MF .deps/symbolize_unittest-symbolize_unittest.Tpo -c -o symbolize_unittest-symbolize_unittest.o `test -f 'src/symbolize_unittest.cc' || echo './'`src/symbolize_unittest.cc
> mv -f .deps/symbolize_unittest-symbolize_unittest.Tpo .deps/symbolize_unittest-symbolize_unittest.Po
> /bin/sh ./libtool --tag=CXX --mode=link g++ -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2 -D_THREAD_SAFE -o symbolize_unittest symbolize_unittest-symbolize_unittest.o libglog.la -lpthread
> libtool: link: g++ -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2 -D_THREAD_SAFE -o symbolize_unittest symbolize_unittest-symbolize_unittest.o -Wl,-bind_at_load ./.libs/libglog.a -lpthread
> g++ -DHAVE_CONFIG_H -I. -I./src -I./src -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2 -MT stl_logging_unittest-stl_logging_unittest.o -MD -MP -MF .deps/stl_logging_unittest-stl_logging_unittest.Tpo -c -o stl_logging_unittest-stl_logging_unittest.o `test -f 'src/stl_logging_unittest.cc' || echo './'`src/stl_logging_unittest.cc
> In file included from src/stl_logging_unittest.cc:34:
> In file included from ./src/glog/stl_logging.h:54:
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/ext/hash_set:202:2: warning: Use of the header <ext/hash_set> is deprecated. Migrate to <unordered_set> [-W#warnings]
> #warning Use of the header <ext/hash_set> is deprecated. Migrate to <unordered_set>
> ^
> In file included from src/stl_logging_unittest.cc:34:
> In file included from ./src/glog/stl_logging.h:55:
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/ext/hash_map:209:2: warning: Use of the header <ext/hash_map> is deprecated. Migrate to <unordered_map> [-W#warnings]
> #warning Use of the header <ext/hash_map> is deprecated. Migrate to <unordered_map>
> ^
> In file included from src/stl_logging_unittest.cc:34:
> ./src/glog/stl_logging.h:56:11: fatal error: 'ext/slist' file not found
> # include <ext/slist>
> ^
> 2 warnings and 1 error generated.
> make[7]: *** [stl_logging_unittest-stl_logging_unittest.o] Error 1
>
> #####################################################################
>
> —
> Tom Arnfeld
> Developer // DueDil
>
> On 30 Jan 2014, at 19:46, Benjamin Mahler <be...@gmail.com> wrote:
>
>> I don't believe that we compile with C++11 on gcc 4.2, and C++11 support did not land in 0.16.0 IIRC.
>>
>> You should remove your -std=c++11 flag. Let us know if that does not work.
>>
>>
>> On Thu, Jan 30, 2014 at 11:40 AM, Tom Arnfeld <to...@duedil.com> wrote:
>> I’m trying to get going with Mesos to do a bit of exploration and i’m having trouble compiling any version of Mesos on Mac OSX. I’m only looking to use the python binding (not actually run a mesos master/slave) on OSX to talk to a remote Mesos/ZK cluster i’ve got setup.
>>
>> I’ve sifted through a bunch of errors, and hit a wall with one I can’t seem to solve. I’m using GCC 4.2 (`brew install gcc4.2`) as there are issues with the GCC included in Xcode. I’ve also had to switch to using protobuf 2.5.0 in `mesos/3rdparty/libprocess/3rdparty.
>>
>> > git clone https://git-wip-us.apache.org/repos/asf/mesos.git
>> > cd mesos
>> > git checkout git checkout 0.16.0-rc4
>> > ./bootstrap
>> > CC="gcc-4.2" CXXFLAGS="-std=c++11" ./configure
>> > make
>>
>> ########################################################################
>>
>> /bin/sh ./libtool --tag=CXX --mode=compile g++ -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I./include -I./3rdparty/stout/include -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15 -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c -o libprocess_la-latch.lo `test -f 'src/latch.cpp' || echo './'`src/latch.cpp
>> libtool: compile: g++ -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" "-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I./include -I./3rdparty/stout/include -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15 -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c src/latch.cpp -fno-common -DPIC -o libprocess_la-latch.o
>> In file included from src/latch.cpp:3:
>>
>> ./include/process/process.hpp:10:10: fatal error: 'tr1/functional' file not found
>> #include <tr1/functional>
>> ^
>> 1 error generated.
>>
>> ####################################
>>
>> The call to `make` fails with the above output. I managed to successfully install thrift version 0.9.1using brew (though unrelated) which makes me think it might not be an issue with thrift, but with the mesos build process?
>>
>> I can attach my Makefile if that’s of any help, Thanks.
>>
>> —
>> Tom Arnfeld
>> Developer // DueDil
>>
>
>
Re: Compiling Mesos on Mac OSX Mountain Lion 10.9
Posted by Benjamin Mahler <be...@gmail.com>.
Did you intend to set CC and CXX? CC is the C compiler, CXX is the C++
compiler.
E.g.
CC="gcc-4.2" CXX="g++-4.2" ./configure
On Thu, Jan 30, 2014 at 11:52 AM, Tom Arnfeld <to...@duedil.com> wrote:
> I've removed that flag and run `make clean` but now I get back to the
> errors with Apple's GCC compiler...
>
> > make clean
> > CC="gcc-4.2" ./configure
> > make
>
> As far as the protobuf upgrade goes, I noticed in JIRA that was release
> into 0.17.0 - I can't seem to find the source for that version anywhere?
>
> #####################################################################
>
> g++ -DHAVE_CONFIG_H -I. -I./src -I./src -D_THREAD_SAFE -Wall
> -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER
> -g -O2 -MT symbolize_unittest-symbolize_unittest.o -MD -MP -MF
> .deps/symbolize_unittest-symbolize_unittest.Tpo -c -o
> symbolize_unittest-symbolize_unittest.o `test -f
> 'src/symbolize_unittest.cc' || echo './'`src/symbolize_unittest.cc
> mv -f .deps/symbolize_unittest-symbolize_unittest.Tpo
> .deps/symbolize_unittest-symbolize_unittest.Po
> /bin/sh ./libtool --tag=CXX --mode=link g++ -D_THREAD_SAFE -Wall
> -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER
> -g -O2 -D_THREAD_SAFE -o symbolize_unittest
> symbolize_unittest-symbolize_unittest.o libglog.la -lpthread
> libtool: link: g++ -D_THREAD_SAFE -Wall -Wwrite-strings
> -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2
> -D_THREAD_SAFE -o symbolize_unittest
> symbolize_unittest-symbolize_unittest.o -Wl,-bind_at_load
> ./.libs/libglog.a -lpthread
> g++ -DHAVE_CONFIG_H -I. -I./src -I./src -D_THREAD_SAFE -Wall
> -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER
> -g -O2 -MT stl_logging_unittest-stl_logging_unittest.o -MD -MP -MF
> .deps/stl_logging_unittest-stl_logging_unittest.Tpo -c -o
> stl_logging_unittest-stl_logging_unittest.o `test -f
> 'src/stl_logging_unittest.cc' || echo './'`src/stl_logging_unittest.cc
> In file included from src/stl_logging_unittest.cc:34:
> In file included from ./src/glog/stl_logging.h:54:
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/ext/hash_set:202:2:
> warning: Use of the header <ext/hash_set> is deprecated. Migrate to
> <unordered_set> [-W#warnings]
> #warning Use of the header <ext/hash_set> is deprecated. Migrate to
> <unordered_set>
> ^
> In file included from src/stl_logging_unittest.cc:34:
> In file included from ./src/glog/stl_logging.h:55:
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/ext/hash_map:209:2:
> warning: Use of the header <ext/hash_map> is deprecated. Migrate to
> <unordered_map> [-W#warnings]
> #warning Use of the header <ext/hash_map> is deprecated. Migrate to
> <unordered_map>
> ^
> In file included from src/stl_logging_unittest.cc:34:
> ./src/glog/stl_logging.h:56:11: fatal error: 'ext/slist' file not found
> # include <ext/slist>
> ^
> 2 warnings and 1 error generated.
> make[7]: *** [stl_logging_unittest-stl_logging_unittest.o] Error 1
>
> #####################################################################
>
> --
> Tom Arnfeld
> Developer // DueDil
>
> On 30 Jan 2014, at 19:46, Benjamin Mahler <be...@gmail.com>
> wrote:
>
> I don't believe that we compile with C++11 on gcc 4.2, and C++11 support
> did not land in 0.16.0 IIRC.
>
> You should remove your -std=c++11 flag. Let us know if that does not work.
>
>
> On Thu, Jan 30, 2014 at 11:40 AM, Tom Arnfeld <to...@duedil.com> wrote:
>
>> I'm trying to get going with Mesos to do a bit of exploration and i'm
>> having trouble compiling any version of Mesos on Mac OSX. I'm only looking
>> to use the python binding (not actually run a mesos master/slave) on OSX to
>> talk to a remote Mesos/ZK cluster i've got setup.
>>
>> I've sifted through a bunch of errors, and hit a wall with one I can't
>> seem to solve. I'm using GCC 4.2 (`brew install gcc4.2`) as there are
>> issues with the GCC included in Xcode. I've also had to switch to using
>> protobuf 2.5.0 in `mesos/3rdparty/libprocess/3rdparty.
>>
>> > git clone https://git-wip-us.apache.org/repos/asf/mesos.git
>> > cd mesos
>> > git checkout git checkout 0.16.0-rc4
>> > ./bootstrap
>> > CC="gcc-4.2" CXXFLAGS="-std=c++11" ./configure
>> > make
>>
>> ########################################################################
>>
>> /bin/sh ./libtool --tag=CXX --mode=compile g++
>> -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\"
>> -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\"
>> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\"
>> -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
>> -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1
>> -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
>> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I.
>> -I./include -I./3rdparty/stout/include -I3rdparty/boost-1.53.0
>> -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15
>> -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT
>> libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c -o
>> libprocess_la-latch.lo `test -f 'src/latch.cpp' || echo './'`src/latch.cpp
>> libtool: compile: g++ -DPACKAGE_NAME=\"libprocess\"
>> -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\"
>> "-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\"
>> -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\"
>> -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
>> -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
>> -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I./include -I./3rdparty/stout/include
>> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15
>> -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT
>> libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c
>> src/latch.cpp -fno-common -DPIC -o libprocess_la-latch.o
>> In file included from src/latch.cpp:3:
>>
>> ./include/process/process.hpp:10:10: fatal error: 'tr1/functional' file
>> not found
>> #include <tr1/functional>
>> ^
>> 1 error generated.
>>
>> ####################################
>>
>> The call to `make` fails with the above output. I managed to successfully
>> install thrift version 0.9.1using brew (though unrelated) which makes me
>> think it might not be an issue with thrift, but with the mesos build
>> process?
>>
>> I can attach my Makefile if that's of any help, Thanks.
>>
>> --
>> Tom Arnfeld
>> Developer // DueDil
>>
>
>
>
Re: Compiling Mesos on Mac OSX Mountain Lion 10.9
Posted by Tom Arnfeld <to...@duedil.com>.
I’ve removed that flag and run `make clean` but now I get back to the errors with Apple’s GCC compiler...
> make clean
> CC="gcc-4.2" ./configure
> make
As far as the protobuf upgrade goes, I noticed in JIRA that was release into 0.17.0 – I can’t seem to find the source for that version anywhere?
#####################################################################
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2 -MT symbolize_unittest-symbolize_unittest.o -MD -MP -MF .deps/symbolize_unittest-symbolize_unittest.Tpo -c -o symbolize_unittest-symbolize_unittest.o `test -f 'src/symbolize_unittest.cc' || echo './'`src/symbolize_unittest.cc
mv -f .deps/symbolize_unittest-symbolize_unittest.Tpo .deps/symbolize_unittest-symbolize_unittest.Po
/bin/sh ./libtool --tag=CXX --mode=link g++ -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2 -D_THREAD_SAFE -o symbolize_unittest symbolize_unittest-symbolize_unittest.o libglog.la -lpthread
libtool: link: g++ -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2 -D_THREAD_SAFE -o symbolize_unittest symbolize_unittest-symbolize_unittest.o -Wl,-bind_at_load ./.libs/libglog.a -lpthread
g++ -DHAVE_CONFIG_H -I. -I./src -I./src -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -DNO_FRAME_POINTER -g -O2 -MT stl_logging_unittest-stl_logging_unittest.o -MD -MP -MF .deps/stl_logging_unittest-stl_logging_unittest.Tpo -c -o stl_logging_unittest-stl_logging_unittest.o `test -f 'src/stl_logging_unittest.cc' || echo './'`src/stl_logging_unittest.cc
In file included from src/stl_logging_unittest.cc:34:
In file included from ./src/glog/stl_logging.h:54:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/ext/hash_set:202:2: warning: Use of the header <ext/hash_set> is deprecated. Migrate to <unordered_set> [-W#warnings]
#warning Use of the header <ext/hash_set> is deprecated. Migrate to <unordered_set>
^
In file included from src/stl_logging_unittest.cc:34:
In file included from ./src/glog/stl_logging.h:55:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/ext/hash_map:209:2: warning: Use of the header <ext/hash_map> is deprecated. Migrate to <unordered_map> [-W#warnings]
#warning Use of the header <ext/hash_map> is deprecated. Migrate to <unordered_map>
^
In file included from src/stl_logging_unittest.cc:34:
./src/glog/stl_logging.h:56:11: fatal error: 'ext/slist' file not found
# include <ext/slist>
^
2 warnings and 1 error generated.
make[7]: *** [stl_logging_unittest-stl_logging_unittest.o] Error 1
#####################################################################
—
Tom Arnfeld
Developer // DueDil
On 30 Jan 2014, at 19:46, Benjamin Mahler <be...@gmail.com> wrote:
> I don't believe that we compile with C++11 on gcc 4.2, and C++11 support did not land in 0.16.0 IIRC.
>
> You should remove your -std=c++11 flag. Let us know if that does not work.
>
>
> On Thu, Jan 30, 2014 at 11:40 AM, Tom Arnfeld <to...@duedil.com> wrote:
> I’m trying to get going with Mesos to do a bit of exploration and i’m having trouble compiling any version of Mesos on Mac OSX. I’m only looking to use the python binding (not actually run a mesos master/slave) on OSX to talk to a remote Mesos/ZK cluster i’ve got setup.
>
> I’ve sifted through a bunch of errors, and hit a wall with one I can’t seem to solve. I’m using GCC 4.2 (`brew install gcc4.2`) as there are issues with the GCC included in Xcode. I’ve also had to switch to using protobuf 2.5.0 in `mesos/3rdparty/libprocess/3rdparty.
>
> > git clone https://git-wip-us.apache.org/repos/asf/mesos.git
> > cd mesos
> > git checkout git checkout 0.16.0-rc4
> > ./bootstrap
> > CC="gcc-4.2" CXXFLAGS="-std=c++11" ./configure
> > make
>
> ########################################################################
>
> /bin/sh ./libtool --tag=CXX --mode=compile g++ -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I./include -I./3rdparty/stout/include -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15 -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c -o libprocess_la-latch.lo `test -f 'src/latch.cpp' || echo './'`src/latch.cpp
> libtool: compile: g++ -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" "-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I./include -I./3rdparty/stout/include -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15 -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c src/latch.cpp -fno-common -DPIC -o libprocess_la-latch.o
> In file included from src/latch.cpp:3:
>
> ./include/process/process.hpp:10:10: fatal error: 'tr1/functional' file not found
> #include <tr1/functional>
> ^
> 1 error generated.
>
> ####################################
>
> The call to `make` fails with the above output. I managed to successfully install thrift version 0.9.1using brew (though unrelated) which makes me think it might not be an issue with thrift, but with the mesos build process?
>
> I can attach my Makefile if that’s of any help, Thanks.
>
> —
> Tom Arnfeld
> Developer // DueDil
>
Re: Compiling Mesos on Mac OSX Mountain Lion 10.9
Posted by Benjamin Mahler <be...@gmail.com>.
I don't believe that we compile with C++11 on gcc 4.2, and C++11 support
did not land in 0.16.0 IIRC.
You should remove your -std=c++11 flag. Let us know if that does not work.
On Thu, Jan 30, 2014 at 11:40 AM, Tom Arnfeld <to...@duedil.com> wrote:
> I'm trying to get going with Mesos to do a bit of exploration and i'm
> having trouble compiling any version of Mesos on Mac OSX. I'm only looking
> to use the python binding (not actually run a mesos master/slave) on OSX to
> talk to a remote Mesos/ZK cluster i've got setup.
>
> I've sifted through a bunch of errors, and hit a wall with one I can't
> seem to solve. I'm using GCC 4.2 (`brew install gcc4.2`) as there are
> issues with the GCC included in Xcode. I've also had to switch to using
> protobuf 2.5.0 in `mesos/3rdparty/libprocess/3rdparty.
>
> > git clone https://git-wip-us.apache.org/repos/asf/mesos.git
> > cd mesos
> > git checkout git checkout 0.16.0-rc4
> > ./bootstrap
> > CC="gcc-4.2" CXXFLAGS="-std=c++11" ./configure
> > make
>
> ########################################################################
>
> /bin/sh ./libtool --tag=CXX --mode=compile g++
> -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\"
> -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\"
> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\"
> -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
> -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1
> -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I.
> -I./include -I./3rdparty/stout/include -I3rdparty/boost-1.53.0
> -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15
> -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT
> libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c -o
> libprocess_la-latch.lo `test -f 'src/latch.cpp' || echo './'`src/latch.cpp
> libtool: compile: g++ -DPACKAGE_NAME=\"libprocess\"
> -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\"
> "-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\"
> -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\"
> -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
> -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
> -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I./include -I./3rdparty/stout/include
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15
> -I3rdparty/ry-http-parser-1c3624a -std=c++11 -g2 -O2 -MT
> libprocess_la-latch.lo -MD -MP -MF .deps/libprocess_la-latch.Tpo -c
> src/latch.cpp -fno-common -DPIC -o libprocess_la-latch.o
> In file included from src/latch.cpp:3:
>
> ./include/process/process.hpp:10:10: fatal error: 'tr1/functional' file
> not found
> #include <tr1/functional>
> ^
> 1 error generated.
>
> ####################################
>
> The call to `make` fails with the above output. I managed to successfully
> install thrift version 0.9.1using brew (though unrelated) which makes me
> think it might not be an issue with thrift, but with the mesos build
> process?
>
> I can attach my Makefile if that's of any help, Thanks.
>
> --
> Tom Arnfeld
> Developer // DueDil
>