[oi-dev] Out of memory when trying to compile icinga2 with gcc6 - problem persists

Till Wegmüller toasterson at gmail.com
Mon Jan 14 13:32:54 UTC 2019


Hi Marianne

I have a quite beefy Machine with 32Gb RAM. If you send me the Link to
your Git Fork/Branch I could try to compile and see if It works on my
machine. Our Buildserver also has enough RAM as Rust was similarly
stupid with allocation.

Greetings
Till

On 14.01.19 10:37, Marianne Spiller wrote:
> Hi all,
> 
> nearly 1 year ago I asked the same and was not able to resolve this issue…
> 
> https://openindiana.org/pipermail/oi-dev/2018-March/005802.html
> 
> Now I’m back with a freshly updated hardware host and trying to compile
> icinga2-2.10.2. I made a change in my Makefile: |COMPONENT_BUILD_ARGS+=
> -j1|, but in comparison with the -j4 default the only difference are
> different values when crashing with out of memory. RAM consumption
> nearly 1.9GB when |Building CXX object
> lib/icinga/CMakeFiles/icinga.dir/icinga_unity.cpp.o|, swap leaving
> untouched.
> 
> It would be really nice to get some help on this ‘cause I’m stucked like
> I was last year at this point ;)
> 
> Cheers,
> Marianne
> 
> |$ uname -a SunOS zfs-2011 5.11 illumos-9c7c0c4b59 i86pc i386 i86pc $
> ulimit unlimited $ swap -lh swapfile dev swaplo blocks free
> /dev/zvol/dsk/rpool/swap 302,2 4K 31.9G 31.9G $ prtconf | grep Memory
> Memory size: 196495 Megabytes
> root at zfs-2011:/scratch/oi-userland/components/sysutils/icinga2# gmake
> sample-manifest /scratch/oi-userland/tools/userland-fetch --file
> /scratch/oi-userland/archives/icinga2-2.10.2.tar.gz --url
> https://github.com/Icinga/icinga2/archive/v2.10.2.tar.gz --hash
> sha256:99ab0c511a8a7014b9cf9467fe126d4a369026e9353f6e64c05ae39a15b32ad9
> Source /scratch/oi-userland/archives/icinga2-2.10.2.tar.gz... validating
> signature... skipping (no signature URL) validating hash... ok
> /usr/bin/touch /scratch/oi-userland/archives/icinga2-2.10.2.tar.gz
> /bin/rm -f -r
> /scratch/oi-userland/components/sysutils/icinga2/icinga2-2.10.2
> /usr/bin/env RUBY_VERSION=2.3 /scratch/oi-userland/tools/userland-unpack
> /scratch/oi-userland/archives/icinga2-2.10.2.tar.gz /usr/bin/touch
> /scratch/oi-userland/components/sysutils/icinga2/icinga2-2.10.2/.unpacked /usr/bin/touch
> /scratch/oi-userland/components/sysutils/icinga2/icinga2-2.10.2/.prep
> (/bin/rm -f -rf
> /scratch/oi-userland/components/sysutils/icinga2/build/amd64 ;
> /bin/mkdir -p
> /scratch/oi-userland/components/sysutils/icinga2/build/amd64) (cd
> /scratch/oi-userland/components/sysutils/icinga2/build/amd64 ;
> /usr/bin/env CONFIG_SHELL="/bin/bash" CC="/usr/gcc/6/bin/gcc"
> CXX="/usr/gcc/6/bin/g++" F77="/usr/gcc/6/bin/gfortran"
> FC="/usr/gcc/6/bin/gfortran" CFLAGS="-m64 -O3 " CXXFLAGS=" -m64 -O3 "
> FFLAGS=" -m64 -O3 " FCFLAGS="-m64 -O3 " LDFLAGS="-m64"
> PKG_CONFIG_PATH="/usr/lib/amd64/pkgconfig" \ cmake
> -DCMAKE_C_COMPILER:STRING="/usr/gcc/6/bin/gcc"
> -DCMAKE_CXX_COMPILER:STRING="/usr/gcc/6/bin/g++"
> -DCMAKE_Fortran_COMPILER:STRING="/usr/gcc/6/bin/gfortran"
> -DCMAKE_C_FLAGS:STRING="-m64 -O3 " -DCMAKE_CXX_FLAGS:STRING=" -m64 -O3 "
> -DCMAKE_Fortran_FLAGS:STRING="-m64 -O3 " LDFLAGS="-m64"
> PKG_CONFIG_PATH="/usr/lib/amd64/pkgconfig"
> -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_INSTALL_BINDIR:PATH=bin
> -DCMAKE_INSTALL_LIBDIR:PATH=lib/amd64 -DCMAKE_INSTALL_SBINDIR:PATH=sbin
> -DCMAKE_INSTALL_DATAROOTDIR:PATH=share
> -DCMAKE_INSTALL_DATADIR:PATH=share
> -DCMAKE_INSTALL_INFODIR:PATH=share/info
> -DCMAKE_INSTALL_LOCALEDIR:PATH=share/locale
> -DCMAKE_INSTALL_MANDIR:PATH=share/man
> -DLIBEXEC_INSTALL_DIR="/usr/lib/amd64"
> -DLIB_INSTALL_DIR="/usr/lib/amd64" -DLIB_SUFFIX="/amd64"
> -DCMAKE_INSTALL_PREFIX="/usr" -DICINGA2_GIT_VERSION_INFO=OFF
> -DICINGA2_USER=icinga -DICINGA2_GROUP=icinga
> -DICINGA2_COMMAND_GROUP=icingacmd -DICINGA2_RUNDIR="/var/lib"
> -DCMAKE_INSTALL_SYSCONFDIR="/etc"
> -DICINGA2_SYSCONFIGFILE="/usr/lib/icinga2/icinga2"
> -DCMAKE_INSTALL_LOCALSTATEDIR="/var"
> -DICINGA2_PLUGINDIR="/usr/lib/nagios/plugins" -DICINGA2_UNITY_BUILD=ON
> -DICINGA2_LTO_BUILD=OFF -DUSE_SYSTEMD=OFF
> -DINSTALL_SYSTEMD_SERVICE_AND_INITSCRIPT=OFF -DICINGA2_WITH_CHECKER=ON
> -DICINGA2_WITH_COMPAT=ON -DICINGA2_WITH_DEMO=OFF
> -DICINGA2_WITH_HELLO=OFF -DICINGA2_WITH_LIVESTATUS=ON
> -DICINGA2_WITH_NOTIFICATION=ON -DICINGA2_WITH_PERFDATA=ON
> -DICINGA2_WITH_STUDIO=OFF -DICINGA2_WITH_TESTS=ON
> -DICINGA2_WITH_MYSQL=OFF -DICINGA2_WITH_PGSQL=OFF
> /scratch/oi-userland/components/sysutils/icinga2/icinga2-2.10.2) -- The
> C compiler identification is GNU 6.4.0 -- The CXX compiler
> identification is GNU 6.4.0 -- Check for working C compiler:
> /usr/gcc/6/bin/gcc -- Check for working C compiler: /usr/gcc/6/bin/gcc
> -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI
> info - done -- Detecting C compile features -- Detecting C compile
> features - done -- Check for working CXX compiler: /usr/gcc/6/bin/g++ --
> Check for working CXX compiler: /usr/gcc/6/bin/g++ -- works -- Detecting
> CXX compiler ABI info -- Detecting CXX compiler ABI info - done --
> Detecting CXX compile features -- Detecting CXX compile features - done
> -- Prefixing in ICINGA2_FULL_PKGDATADIR "share/icinga2" with /usr --
> Prefixing in ICINGA2_FULL_INCLUDEDIR "share/icinga2/include" with /usr
> -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for
> pthread_create -- Looking for pthread_create - found -- Found Threads:
> TRUE -- Boost version: 1.64.0 -- Found the following Boost libraries: --
> thread -- system -- program_options -- regex -- chrono -- date_time --
> atomic -- Found OpenSSL: /usr/lib/64/libcrypto.so (found version
> "1.0.2q") -- Found PkgConfig: /usr/bin/pkg-config (found version
> "0.29.2") -- Found yajl: /usr/lib/amd64/libyajl.so -- Found Editline:
> /usr/lib/64/libedit.so -- Found Termcap: /lib/64/libtermcap.so --
> Performing Test CXX_INVALID_PCH -- Performing Test CXX_INVALID_PCH -
> Success -- Looking for __COUNTER__ -- Looking for __COUNTER__ - found --
> Looking for vfork -- Looking for vfork - found -- Looking for
> backtrace_symbols -- Looking for backtrace_symbols - found -- Looking
> for pipe2 -- Looking for pipe2 - found -- Looking for nice -- Looking
> for nice - found -- Looking for dladdr in dl -- Looking for dladdr in dl
> - found -- Looking for backtrace_symbols in execinfo -- Looking for
> backtrace_symbols in execinfo - not found -- Looking for C++ include
> cxxabi.h -- Looking for C++ include cxxabi.h - found -- Performing Test
> CXX_FEATURE_OVERRIDE -- Performing Test CXX_FEATURE_OVERRIDE - Success
> -- Found BISON: /usr/bin/bison (Required is at least version "2.3.0") --
> Found FLEX: 2.6.4 (Required is at least version "2.5.31") -- Test 'base'
> uses the CMake-configurable form of the boost test framework - congrats!
> (Including File: test-runner.cpp) -- Test 'livestatus' uses the
> CMake-configurable form of the boost test framework - congrats!
> (Including File: test-runner.cpp) -- Test 'icinga_checkable' uses the
> CMake-configurable form of the boost test framework - congrats!
> (Including File: test-runner.cpp) -- Configuring done -- Generating done
> CMake Warning: Manually-specified variables were not used by the
> project: CMAKE_Fortran_COMPILER CMAKE_Fortran_FLAGS ICINGA2_WITH_DEMO
> ICINGA2_WITH_HELLO ICINGA2_WITH_STUDIO LIBEXEC_INSTALL_DIR
> LIB_INSTALL_DIR LIB_SUFFIX -- Build files have been written to:
> /scratch/oi-userland/components/sysutils/icinga2/build/amd64
> /usr/bin/touch
> /scratch/oi-userland/components/sysutils/icinga2/build/amd64/.configured
> (cd /scratch/oi-userland/components/sysutils/icinga2/build/amd64 ;
> /usr/bin/env LD_OPTIONS="-M /usr/lib/ld/map.noexstk -M
> /usr/lib/ld/map.noexdata -M /usr/lib/ld/map.pagealign "
> LD_EXEC_OPTIONS="-z aslr=disable" \ /usr/gnu/bin/make -j1 \ ) make[1]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[2]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' Scanning
> dependencies of target mmatch make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 1%]
> Building C object third-party/mmatch/CMakeFiles/mmatch.dir/mmatch.c.o
> make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 1%]
> Built target mmatch make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' Scanning
> dependencies of target execvpe make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 2%]
> Building C object third-party/execvpe/CMakeFiles/execvpe.dir/execvpe.c.o
> /scratch/oi-userland/components/sysutils/icinga2/icinga2-2.10.2/third-party/execvpe/execvpe.c:
> In function 'icinga2_execvpe':
> /scratch/oi-userland/components/sysutils/icinga2/icinga2-2.10.2/third-party/execvpe/execvpe.c:96:21:
> warning: implicit declaration of function 'confstr'
> [-Wimplicit-function-declaration] pathlen = confstr (_CS_PATH, (char *)
> NULL, 0); ^~~~~~~ make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 2%]
> Built target execvpe make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' Scanning
> dependencies of target socketpair make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 3%]
> Building C object
> third-party/socketpair/CMakeFiles/socketpair.dir/socketpair.c.o make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 3%]
> Built target socketpair make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 4%]
> [FLEX][class_lexer] Building scanner with flex 2.6.4 [ 5%]
> [BISON][class_parser] Building parser with bison 3.0.4 class_parser.yy:
> warning: 2 shift/reduce conflicts [-Wconflicts-sr] Scanning dependencies
> of target mkclass make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 6%]
> Building CXX object tools/mkclass/CMakeFiles/mkclass.dir/mkclass.cpp.o [
> 6%] Building CXX object
> tools/mkclass/CMakeFiles/mkclass.dir/classcompiler.cpp.o [ 7%] Building
> CXX object tools/mkclass/CMakeFiles/mkclass.dir/class_lexer.cc.o [ 8%]
> Building CXX object
> tools/mkclass/CMakeFiles/mkclass.dir/class_parser.cc.o [ 9%] Linking CXX
> executable ../../Bin/Release/mkclass make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 9%]
> Built target mkclass make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' Scanning
> dependencies of target mkembedconfig make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 10%]
> Building C object
> tools/mkembedconfig/CMakeFiles/mkembedconfig.dir/mkembedconfig.c.o [
> 11%] Linking C executable ../../Bin/Release/mkembedconfig make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 11%]
> Built target mkembedconfig make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' Scanning
> dependencies of target mkunity make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 12%]
> Building C object tools/mkunity/CMakeFiles/mkunity.dir/mkunity.c.o [
> 13%] Linking C executable ../../Bin/Release/mkunity make[3]: Leaving
> directory '/scratch/oi-userland/components/sysutils/icinga2/build/amd64'
> [ 13%] Built target mkunity make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 14%]
> Generating base_unity.cpp [ 14%] Generating application-ti.cpp,
> application-ti.hpp [ 15%] Generating configobject-ti.cpp,
> configobject-ti.hpp [ 16%] Generating configuration-ti.cpp,
> configuration-ti.hpp [ 17%] Generating datetime-ti.cpp, datetime-ti.hpp
> [ 18%] Generating filelogger-ti.cpp, filelogger-ti.hpp [ 19%] Generating
> function-ti.cpp, function-ti.hpp [ 20%] Generating logger-ti.cpp,
> logger-ti.hpp [ 21%] Generating perfdatavalue-ti.cpp,
> perfdatavalue-ti.hpp [ 22%] Generating streamlogger-ti.cpp,
> streamlogger-ti.hpp [ 23%] Generating sysloglogger-ti.cpp,
> sysloglogger-ti.hpp Scanning dependencies of target base make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 24%]
> Building CXX object
> lib/base/CMakeFiles/base.dir/application-version.cpp.o [ 25%] Building
> CXX object lib/base/CMakeFiles/base.dir/base_unity.cpp.o make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 25%]
> Built target base make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 25%]
> Generating config_unity.cpp [ 26%] [BISON][config_parser] Building
> parser with bison 3.0.4 config_parser.yy: warning: 52 shift/reduce
> conflicts [-Wconflicts-sr] config_parser.yy: warning: 101 reduce/reduce
> conflicts [-Wconflicts-rr] [ 27%] [FLEX][config_lexer] Building scanner
> with flex 2.6.4 Scanning dependencies of target config make[3]: Leaving
> directory '/scratch/oi-userland/components/sysutils/icinga2/build/amd64'
> make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 28%]
> Building CXX object lib/config/CMakeFiles/config.dir/config_lexer.cc.o [
> 29%] Building CXX object
> lib/config/CMakeFiles/config.dir/config_parser.cc.o [ 30%] Building CXX
> object lib/config/CMakeFiles/config.dir/config_unity.cpp.o make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 30%]
> Built target config make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 31%]
> Generating remote_unity.cpp [ 32%] Generating apilistener-ti.cpp,
> apilistener-ti.hpp [ 33%] Generating apiuser-ti.cpp, apiuser-ti.hpp [
> 34%] Generating endpoint-ti.cpp, endpoint-ti.hpp [ 35%] Generating
> zone-ti.cpp, zone-ti.hpp Scanning dependencies of target remote make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 36%]
> Building CXX object lib/remote/CMakeFiles/remote.dir/remote_unity.cpp.o
> make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 36%]
> Built target remote make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 37%]
> Generating cli_unity.cpp Scanning dependencies of target cli make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 38%]
> Building CXX object lib/cli/CMakeFiles/cli.dir/cli_unity.cpp.o make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 38%]
> Built target cli make[3]: Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 39%]
> Generating icinga_unity.cpp [ 40%] Generating icinga-itl.cpp [ 41%]
> Generating checkable-ti.cpp, checkable-ti.hpp [ 42%] Generating
> checkcommand-ti.cpp, checkcommand-ti.hpp [ 43%] Generating
> checkresult-ti.cpp, checkresult-ti.hpp [ 44%] Generating command-ti.cpp,
> command-ti.hpp [ 45%] Generating comment-ti.cpp, comment-ti.hpp [ 46%]
> Generating customvarobject-ti.cpp, customvarobject-ti.hpp [ 47%]
> Generating dependency-ti.cpp, dependency-ti.hpp [ 48%] Generating
> downtime-ti.cpp, downtime-ti.hpp [ 48%] Generating eventcommand-ti.cpp,
> eventcommand-ti.hpp [ 49%] Generating host-ti.cpp, host-ti.hpp [ 50%]
> Generating hostgroup-ti.cpp, hostgroup-ti.hpp [ 51%] Generating
> icingaapplication-ti.cpp, icingaapplication-ti.hpp [ 52%] Generating
> notification-ti.cpp, notification-ti.hpp [ 53%] Generating
> notificationcommand-ti.cpp, notificationcommand-ti.hpp [ 54%] Generating
> scheduleddowntime-ti.cpp, scheduleddowntime-ti.hpp [ 55%] Generating
> service-ti.cpp, service-ti.hpp [ 56%] Generating servicegroup-ti.cpp,
> servicegroup-ti.hpp [ 57%] Generating timeperiod-ti.cpp,
> timeperiod-ti.hpp [ 58%] Generating user-ti.cpp, user-ti.hpp [ 59%]
> Generating usergroup-ti.cpp, usergroup-ti.hpp Scanning dependencies of
> target icinga make[3]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[3]:
> Entering directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' [ 59%]
> Building CXX object lib/icinga/CMakeFiles/icinga.dir/icinga-itl.cpp.o [
> 60%] Building CXX object
> lib/icinga/CMakeFiles/icinga.dir/icinga_unity.cpp.o cc1plus: out of
> memory allocating 2500880 bytes after a total of 74653696 bytes make[3]:
> *** [lib/icinga/CMakeFiles/icinga.dir/build.make:289:
> lib/icinga/CMakeFiles/icinga.dir/icinga_unity.cpp.o] Error 1 make[3]:
> Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[2]:
> *** [CMakeFiles/Makefile2:1646: lib/icinga/CMakeFiles/icinga.dir/all]
> Error 2 make[2]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' make[1]:
> *** [Makefile:163: all] Error 2 make[1]: Leaving directory
> '/scratch/oi-userland/components/sysutils/icinga2/build/amd64' gmake:
> *** [/scratch/oi-userland/make-rules/cmake.mk:179:
> /scratch/oi-userland/components/sysutils/icinga2/build/amd64/.built]
> Error 2 |
> 
> ------------------------------------------------------------------------
> 
> Marianne Spiller - Infrastrukturgruppe DFKI - Campus D3.2 - 66123
> Saarbrücken
> Phone: (+49) 681 85775-7741
> Fax: (+49) 861 85775-5020
> Email: Marianne.Spiller at dfki.de <mailto:Marianne.Spiller at dfki.de>
> 
> Deutsches Forschungszentrum für Künstliche Intelligenz GmbH,
> Trippstadter Strasse 122, D-67663 Kaiserslautern, Germany, www.dfki.de
> <http://www.dfki.de> *
> Geschäftsführung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vors.),
> Dr. Walter Olthoff * Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans
> A. Aukes * Amtsgericht Kaiserslautern, HRB 2313
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> oi-dev mailing list
> oi-dev at openindiana.org
> https://openindiana.org/mailman/listinfo/oi-dev
> 




More information about the oi-dev mailing list