Mesos 1.1.0构建错误

时间:2016-12-19 16:54:10

标签: mesos

我正在尝试按照getting started指南构建Apache Mesos 1.1.0。

包括配置脚本在内的所有内容对我来说都没问题,但是在构建时我遇到了错误。我使用的是Ubuntu 16.04 64位和java-1.8.0-openjdk-amd64。我也使用稳定的tar.gz源文件而不是推荐的git。

以下是来自make:

的错误消息
/bin/bash ../libtool  --tag=CC --tag=CXX  --mode=link gcc  -g1 -O0 -Wno-unused-local-typedefs -release 1.1.0  -o libmesos.la -rpath /usr/local/lib                              libmesos_no_3rdparty.la ../3rdparty/glog-0.3.3/libglog.la ../3rdparty/leveldb-1.4/libleveldb.a ../3rdparty/libprocess/libprocess.la ../3rdparty/protobuf-2.6.1/src/libprotobuf.la ../3rdparty/zookeeper-3.4.8/src/c/libzookeeper_mt.la -lsvn_subr-1 -lsvn_delta-1 -lapr-1 libjava.la -lz -lsvn_delta-1 -lsvn_subr-1 -lsasl2 -lcurl -lapr-1 -lz  -lrt

*** Warning: Linking the shared library libmesos.la against the
*** static library ../3rdparty/leveldb-1.4/libleveldb.a is not portable!
libtool: link: rm -fr  .libs/libmesos-1.1.0.so
libtool: link: g++  -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbeginS.o  -Wl,--whole-archive ./.libs/libmesos_no_3rdparty.a ../3rdparty/libprocess/.libs/libprocess.a ./.libs/libjava.a -Wl,--no-whole-archive  ../3rdparty/glog-0.3.3/.libs/libglog.a ../3rdparty/leveldb-1.4/libleveldb.a /opt/mesos-1.1.0/build/3rdparty/glog-0.3.3/.libs/libglog.a /opt/mesos-1.1.0/build/3rdparty/libev-4.22/.libs/libev.a ../3rdparty/protobuf-2.6.1/src/.libs/libprotobuf.a ../3rdparty/zookeeper-3.4.8/src/c/.libs/libzookeeper_mt.a -lpthread /usr/lib/x86_64-linux-gnu/libsvn_delta-1.so /usr/lib/x86_64-linux-gnu/libsvn_subr-1.so -lsasl2 /usr/lib/x86_64-linux-gnu/libcurl-nss.so /usr/lib/x86_64-linux-gnu/libapr-1.so -lz -lrt -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/5/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o  -g1 -O0   -pthread -Wl,-soname -Wl,libmesos-1.1.0.so -o .libs/libmesos-1.1.0.so
collect2: fatal error: ld terminated with signal 9 [Killed]
compilation terminated.
Makefile:3594: recipe for target 'libmesos.la' failed
make[2]: *** [libmesos.la] Error 1
make[2]: Leaving directory '/opt/mesos-1.1.0/build/src'
Makefile:3320: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/opt/mesos-1.1.0/build/src'
Makefile:762: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

知道我为什么会这样吗?感谢。

1 个答案:

答案 0 :(得分:3)

这通常意味着编译Mesos需要太多内存;内核耗尽了内存,然后OOM杀手碰巧选择链接器进程通过SIGKILL终止。

尝试安装更多RAM或增加可用的交换空间量。