From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12783 invoked by alias); 9 Jan 2006 17:25:15 -0000 Received: (qmail 12719 invoked by uid 48); 9 Jan 2006 17:25:12 -0000 Date: Mon, 09 Jan 2006 17:25:00 -0000 Message-ID: <20060109172512.12718.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug libgcj/13212] JNI/CNI AttachCurrentThread does not register thread with garbage collector In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: java-prs@gcc.gnu.org From: "aph at gcc dot gnu dot org" Mailing-List: contact java-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-prs-owner@gcc.gnu.org X-SW-Source: 2006-q1/txt/msg00028.txt.bz2 List-Id: ------- Comment #20 from aph at gcc dot gnu dot org 2006-01-09 17:25 ------- This breaks java on s390. # LD_PRELOAD=/usr/lib/jvm/java-gcj/jre/lib/s390/pr13212.so /bin/echo /bin/echo: symbol lookup error: /usr/lib/libgcj.so.7: undefined symbol: __data_start This is because pr13212.so requires libgcj.so.7, and libgcj.so.7 requires __data_start to be provided by the executable. /bin/echo does not define __data_start. This fixes things on s390: extern int __data_start __attribute__((weak)); int __data_start; but it doesn't seem like a good idea in general. This LD_PRELOAD hack seems to make every child of /usr/bin/java load libgcj.so.7 and so potentially breaks all manner of things. -- aph at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at redhat dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13212