g++: internal compiler error: Killed (program cc1plus) #872

Closed
opened 2026-10-05 04:49:38 +02:00 by adam · 11 comments
Owner

bnc@landslyde:~/znc-1.7.1$ ./configure
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking whether g++ supports C++11 features by default... no
checking whether g++ supports C++11 features with -std=c++11... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for grep that handles long lines and -e... /bin/grep
checking for a sed that does not truncate output... /bin/sed
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether the -Werror option is usable... yes
checking for simple visibility declarations... yes
checking for git... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking whether compiler predefines _FORTIFY_SOURCE... no
checking for getopt_long in -lgnugetopt... no
checking for lstat... yes
checking for getopt_long... yes
checking for getpassphrase... no
checking for clock_gettime... yes
checking for tcsetattr... yes
checking for library containing dlopen... -ldl
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... yes
checking whether getaddrinfo() supports AI_ADDRCONFIG... yes
checking for openssl... yes
checking whether openssl is usable... yes
checking whether zlib is usable... yes
checking for icu-uc... yes
checking for Qt5Network >= 5.4... no
checking for GNU make... /usr/bin/make
configure: creating ./config.status
config.status: creating Makefile
config.status: creating znc-buildmod
config.status: creating man/Makefile
config.status: creating znc.pc
config.status: creating znc-uninstalled.pc
config.status: creating modules/Makefile
config.status: creating include/znc/zncconfig.h

ZNC 1.7.1 configured

prefix: /usr/local
debug: no
ipv6: yes
openssl: yes
dns: threads
perl: no
python: no
swig: not needed
cyrus: no
tcl: no
charset: yes
zlib: yes
run from src: no

Now you can run "make" to compile ZNC
bnc@landslyde:/znc-1.7.1$ make
Packing man page znc.1.gz...
Packing man page znc-buildmod.1.gz...
Building module admindebug...
Linking module admindebug...
Building module adminlog...
Linking module adminlog...
Building module alias...
Linking module alias...
Building module autoattach...
Linking module autoattach...
Building module autocycle...
Linking module autocycle...
Building module autoop...
g++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See file:///usr/share/doc/gcc-4.9/README.Bugs for instructions.
Makefile:131: recipe for target 'autoop.o' failed
make[1]: *** [autoop.o] Error 4
Makefile:121: recipe for target 'modules' failed
make: *** [modules] Error 2
bnc@landslyde:
/znc-1.7.1$

===============================================================
That's all I have.

I'm on Debian 8 (ramnode.com VPS). This is a fresh install of the OS.

I added these files, found listed here: https://wiki.znc.in/Installation

build-essential
libssl-dev
libperl-dev
pkg-config
libicu-dev

And then it locked down on me @ make.

bnc@landslyde:~/znc-1.7.1$ ./configure checking for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether g++ supports C++11 features by default... no checking whether g++ supports C++11 features with -std=c++11... yes checking for a BSD-compatible install... /usr/bin/install -c checking for grep that handles long lines and -e... /bin/grep checking for a sed that does not truncate output... /bin/sed checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking whether the -Werror option is usable... yes checking for simple visibility declarations... yes checking for git... no checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking whether compiler predefines _FORTIFY_SOURCE... no checking for getopt_long in -lgnugetopt... no checking for lstat... yes checking for getopt_long... yes checking for getpassphrase... no checking for clock_gettime... yes checking for tcsetattr... yes checking for library containing dlopen... -ldl checking for the pthreads library -lpthreads... no checking whether pthreads work without any flags... no checking whether pthreads work with -Kthread... no checking whether pthreads work with -kthread... no checking for the pthreads library -llthread... no checking whether pthreads work with -pthread... yes checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE checking if more special flags are required for pthreads... no checking for PTHREAD_PRIO_INHERIT... yes checking whether getaddrinfo() supports AI_ADDRCONFIG... yes checking for openssl... yes checking whether openssl is usable... yes checking whether zlib is usable... yes checking for icu-uc... yes checking for Qt5Network >= 5.4... no checking for GNU make... /usr/bin/make configure: creating ./config.status config.status: creating Makefile config.status: creating znc-buildmod config.status: creating man/Makefile config.status: creating znc.pc config.status: creating znc-uninstalled.pc config.status: creating modules/Makefile config.status: creating include/znc/zncconfig.h ZNC 1.7.1 configured prefix: /usr/local debug: no ipv6: yes openssl: yes dns: threads perl: no python: no swig: not needed cyrus: no tcl: no charset: yes zlib: yes run from src: no Now you can run "make" to compile ZNC bnc@landslyde:~/znc-1.7.1$ make Packing man page znc.1.gz... Packing man page znc-buildmod.1.gz... Building module admindebug... Linking module admindebug... Building module adminlog... Linking module adminlog... Building module alias... Linking module alias... Building module autoattach... Linking module autoattach... Building module autocycle... Linking module autocycle... Building module autoop... g++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-4.9/README.Bugs> for instructions. Makefile:131: recipe for target 'autoop.o' failed make[1]: *** [autoop.o] Error 4 Makefile:121: recipe for target 'modules' failed make: *** [modules] Error 2 bnc@landslyde:~/znc-1.7.1$ =============================================================== That's all I have. I'm on Debian 8 (ramnode.com VPS). This is a fresh install of the OS. I added these files, found listed here: https://wiki.znc.in/Installation build-essential libssl-dev libperl-dev pkg-config libicu-dev And then it locked down on me @ make. <!-- github-sync-id:364168600 -->
adam closed this issue 2026-10-05 04:49:38 +02:00
Author
Owner

Not sure why your editor crossed out the text in my post. It wldnt let me fix it either.

Not sure why your editor crossed out the text in my post. It wldnt let me fix it either. <!-- github-comment-id:424835228 -->
Author
Owner

Reposting your code bits in code format, because those strikethroughs are horrendous (it's the ~ characters in line turning into strikethroughs):

bnc@landslyde:~/znc-1.7.1$ ./configure
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking whether g++ supports C++11 features by default... no
checking whether g++ supports C++11 features with -std=c++11... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for grep that handles long lines and -e... /bin/grep
checking for a sed that does not truncate output... /bin/sed
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether the -Werror option is usable... yes
checking for simple visibility declarations... yes
checking for git... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking whether compiler predefines _FORTIFY_SOURCE... no
checking for getopt_long in -lgnugetopt... no
checking for lstat... yes
checking for getopt_long... yes
checking for getpassphrase... no
checking for clock_gettime... yes
checking for tcsetattr... yes
checking for library containing dlopen... -ldl
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... yes
checking whether getaddrinfo() supports AI_ADDRCONFIG... yes
checking for openssl... yes
checking whether openssl is usable... yes
checking whether zlib is usable... yes
checking for icu-uc... yes
checking for Qt5Network >= 5.4... no
checking for GNU make... /usr/bin/make
configure: creating ./config.status
config.status: creating Makefile
config.status: creating znc-buildmod
config.status: creating man/Makefile
config.status: creating znc.pc
config.status: creating znc-uninstalled.pc
config.status: creating modules/Makefile
config.status: creating include/znc/zncconfig.h

ZNC 1.7.1 configured

prefix: /usr/local
debug: no
ipv6: yes
openssl: yes
dns: threads
perl: no
python: no
swig: not needed
cyrus: no
tcl: no
charset: yes
zlib: yes
run from src: no

Now you can run "make" to compile ZNC
bnc@landslyde:~/znc-1.7.1$ make
Packing man page znc.1.gz...
Packing man page znc-buildmod.1.gz...
Building module admindebug...
Linking module admindebug...
Building module adminlog...
Linking module adminlog...
Building module alias...
Linking module alias...
Building module autoattach...
Linking module autoattach...
Building module autocycle...
Linking module autocycle...
Building module autoop...
g++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See file:///usr/share/doc/gcc-4.9/README.Bugs for instructions.
Makefile:131: recipe for target 'autoop.o' failed
make[1]: *** [autoop.o] Error 4
Makefile:121: recipe for target 'modules' failed
make: *** [modules] Error 2
bnc@landslyde:~/znc-1.7.1$
Reposting your code bits in code format, because those strikethroughs are horrendous (it's the ~ characters in line turning into strikethroughs): ``` bnc@landslyde:~/znc-1.7.1$ ./configure checking for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether g++ supports C++11 features by default... no checking whether g++ supports C++11 features with -std=c++11... yes checking for a BSD-compatible install... /usr/bin/install -c checking for grep that handles long lines and -e... /bin/grep checking for a sed that does not truncate output... /bin/sed checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking whether the -Werror option is usable... yes checking for simple visibility declarations... yes checking for git... no checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking whether compiler predefines _FORTIFY_SOURCE... no checking for getopt_long in -lgnugetopt... no checking for lstat... yes checking for getopt_long... yes checking for getpassphrase... no checking for clock_gettime... yes checking for tcsetattr... yes checking for library containing dlopen... -ldl checking for the pthreads library -lpthreads... no checking whether pthreads work without any flags... no checking whether pthreads work with -Kthread... no checking whether pthreads work with -kthread... no checking for the pthreads library -llthread... no checking whether pthreads work with -pthread... yes checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE checking if more special flags are required for pthreads... no checking for PTHREAD_PRIO_INHERIT... yes checking whether getaddrinfo() supports AI_ADDRCONFIG... yes checking for openssl... yes checking whether openssl is usable... yes checking whether zlib is usable... yes checking for icu-uc... yes checking for Qt5Network >= 5.4... no checking for GNU make... /usr/bin/make configure: creating ./config.status config.status: creating Makefile config.status: creating znc-buildmod config.status: creating man/Makefile config.status: creating znc.pc config.status: creating znc-uninstalled.pc config.status: creating modules/Makefile config.status: creating include/znc/zncconfig.h ZNC 1.7.1 configured prefix: /usr/local debug: no ipv6: yes openssl: yes dns: threads perl: no python: no swig: not needed cyrus: no tcl: no charset: yes zlib: yes run from src: no Now you can run "make" to compile ZNC bnc@landslyde:~/znc-1.7.1$ make Packing man page znc.1.gz... Packing man page znc-buildmod.1.gz... Building module admindebug... Linking module admindebug... Building module adminlog... Linking module adminlog... Building module alias... Linking module alias... Building module autoattach... Linking module autoattach... Building module autocycle... Linking module autocycle... Building module autoop... g++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See file:///usr/share/doc/gcc-4.9/README.Bugs for instructions. Makefile:131: recipe for target 'autoop.o' failed make[1]: *** [autoop.o] Error 4 Makefile:121: recipe for target 'modules' failed make: *** [modules] Error 2 bnc@landslyde:~/znc-1.7.1$ ``` <!-- github-comment-id:424835348 -->
Author
Owner

This is a classic Out Of Memory error; your system ran out of available RAM and the offending process was terminated. How much RAM does that VPS have?

This is a classic Out Of Memory error; your system ran out of available RAM and the offending process was terminated. How much RAM does that VPS have? <!-- github-comment-id:424835696 -->
Author
Owner

RAM / VSwap
128 / 64 MB

How much do i need? I have just one eggdrop running on this one.

RAM / VSwap 128 / 64 MB How much do i need? I have just one eggdrop running on this one. <!-- github-comment-id:424846238 -->
Author
Owner

RamNode 128MB OpenVZ VPSes are not powerful enough to do a ZNC compilation. Neither are the 256MB VPSes. (512MB barely gets you by). Your VPS is not powerful enough by a long shot to complete the compilation of ZNC.

A long time ago, you could utilize a Debian repository I used to run for this. Unfortunately, at this point, you're stuck using whatever's in the Debian repositories for your release (unless someone else puts up a Debian repository with newer ZNC)

(I've been tempted to provide that repository again, but I can never find the time to get it done...)

RamNode 128MB OpenVZ VPSes are **not** powerful enough to do a ZNC compilation. Neither are the 256MB VPSes. (512MB *barely* gets you by). Your VPS is not powerful enough by a long shot to complete the compilation of ZNC. A long time ago, you could utilize a Debian repository I used to run for this. Unfortunately, at this point, you're stuck using whatever's in the Debian repositories for your release (unless someone else puts up a Debian repository with newer ZNC) (I've been tempted to provide that repository again, but I can never find the time to get it done...) <!-- github-comment-id:424849772 -->
Author
Owner

I have znc running on one of those vpses (I have 3 of them). I remember (now) there was something special you had to do to get it to install. But it can be done. I'll find that and post back here.

I have znc running on one of those vpses (I have 3 of them). I remember (now) there was something special you had to do to get it to install. But it can be done. I'll find that and post back here. <!-- github-comment-id:424881734 -->
Author
Owner

This worked on the 1.6.x versions:
./configure --disable-optimization CXXFLAGS="--param ggc-min-expand=2 --param ggc-min-heapsize=20000"
But not on the 1.7.x

This worked on the 1.6.x versions: `./configure --disable-optimization CXXFLAGS="--param ggc-min-expand=2 --param ggc-min-heapsize=20000"` But not on the 1.7.x <!-- github-comment-id:424890326 -->
Author
Owner

You can always add tons of swap and wait for a looong time; or compile on another machine, then move binaries over, e.g. using checkinstall.

You can always add tons of swap and wait for a looong time; or compile on another machine, then move binaries over, e.g. using `checkinstall`. <!-- github-comment-id:424902827 -->
Author
Owner

regarding swap: Except on RamNode OpenVZ 128s, @DarthGandalf, theres something that prohibits putting local swap file space on those. Tried it myself and it still doesnt work (I have a few 128s as DNS NameServers)

regarding swap: Except on RamNode OpenVZ 128s, @DarthGandalf, theres something that prohibits putting local swap file space on those. Tried it myself and it still doesnt work (I have a few 128s as DNS NameServers) <!-- github-comment-id:424907599 -->
Author
Owner

@teward: That is because you cannot mount anything when using an OpenVZ VPS, from any provider, including additional swap. This limitation translates further into being unable to utilize things like sshfs .. quite annoying, but a known limitation of OpenVZ. KVM wouldn't have this problem.

@teward: That is because you cannot mount anything when using an OpenVZ VPS, from any provider, including additional swap. This limitation translates further into being unable to utilize things like sshfs .. quite annoying, but a known limitation of OpenVZ. KVM wouldn't have this problem. <!-- github-comment-id:425765526 -->
Author
Owner

@magnum7385 yes, I know this. I was making a statement in follow up to DarthGandalf that an OpenVZ RamNode VPS as in use in this initial bug cant have additional swap mounted is all.

@magnum7385 yes, I know this. I was making a statement in follow up to DarthGandalf that an OpenVZ RamNode VPS as in use in this initial bug cant have additional swap mounted is all. <!-- github-comment-id:425783909 -->
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/znc#872