GC seems to kill process

Andi Vajda andi@osafoundation.org
Wed Mar 22 16:06:00 GMT 2006


On my gentoo Linux system, I built gcc 4.1.0 configured with:
   ../gcc-4.1.0/configure --enable-threads=posix --prefix=/usr/local/gcc-4.1.0
                          --enable-languages=c,c++,java

Whenever I run my compiled java code, as soon as the garbage collector kicks 
in, the process is "Killed". The easiest way for me to reproduce this is to 
simply invoke System.gc():

> python
Python 2.4 (#2, Dec 20 2004, 17:30:16)
[GCC 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import PyLucene
>>> PyLucene.System.gc()
>>> Killed

Each of the .jar files making up PyLucene's java code are compiled with:
   /usr/local/gcc-4.1.0/bin/gcj --encoding=UTF-8 -O2 -fPIC -c -o
   release/lucene.o
   lucene-java-2.0-rc1-dev-382522/build/lucene-core-2.0-rc1-dev-382522.jar

The final executable, _PyLucene.so, is produced with:

/usr/local/gcc-4.1.0/bin/g++ -shared -o release/_PyLucene.so -O2 -fPIC 
-DPYLUCENE_VER="'2.0rc1-1'" -DLUCENE_VER="'2.0-rc1-dev-382522'" 
-Ilucene-java-2.0-rc1-dev-382522/build/classes/java 
-Ilucene-java-2.0-rc1-dev-382522/build/contrib/highlighter/classes/java 
-Ilucene-java-2.0-rc1-dev-382522/build/contrib/snowball/classes/java 
-Ilucene-java-2.0-rc1-dev-382522/build/contrib/analyzers/classes/java 
-Ilucene-java-2.0-rc1-dev-382522/build/contrib/regex/classes/java 
-Irelease/classes -I/usr/local/include/python2.4 
-I/usr/local/gcc-4.1.0/include PyLucene_wrap.cxx release/lucene.o 
release/snowball.o release/highlighter.o release/analyzers.o release/regex.o 
release/regex.cpp.o release/util.java.o release/util.cpp.o release/io.java.o 
release/io.cpp.o release/store.java.o release/store.cpp.o 
release/search.java.o release/search.cpp.o release/queryParser.java.o 
release/queryParser.cpp.o release/analysis.java.o release/analysis.cpp.o 
release/highlight.java.o release/highlight.cpp.o -L/usr/local/gcc-4.1.0/lib 
-lgcj

When I do the very same with gcc 3.4.4 it works fine.
What's changed ?
What am I doing wrong ?

Thanks !

Andi..



More information about the Java mailing list