Bad patchwork: libgcj.so: undefined reference to `gcj_describe_type_fn'

Martin Egholm Nielsen martin@egholm-nielsen.dk
Wed Mar 15 20:36:00 GMT 2006


David,

>> (For those not reading my desparate attempts on the GC list:)
>> I'm trying to trace some stuff in the garbage collector being 
>> responsible for doubling my GC times.
>> In that attempt Hans Boehm has guided me into using the method 
>> "gcj_describe_type_fn" defined in "libjava/boehm.cc" - defined for 
>> newer releases, that is. Now, I'm quite stuck with the 3.4.x branch, 
>> hence this method is not there.
>> So I just patched it in from SVN trunk (though removing the 
>> static'ness), and everything (boehm and libjava) compiles just fine. 
>> However, the minute I try to compile my own application, I get the 
>> following error message:
>>
>> --- 8< 8< 8< ---
>> lib/libgcj.so: undefined reference to `gcj_describe_type_fn'
>> collect2: ld returned 1 exit status
>> --- 8< 8< 8< ---
> I don't know for sure, but the object file containing the definition of 
> that function should probably be in:
> 
> libgcjgc_convenience.a
> 
> You may want to use nm to confirm that that symbol is defined in said 
> library.

$ powerpc-405-linux-gnu-nm libgcjgc_convenience.a | grep gcj_
gcj_mlc.o:
000006f4 T GC_debug_gcj_fast_malloc
0000046c T GC_debug_gcj_malloc
00000004 C GC_gcj_debug_kind
000005dc T GC_gcj_fast_malloc
00000004 C GC_gcj_kind
000002f4 T GC_gcj_malloc
00000870 T GC_gcj_malloc_ignore_off_page
00000000 S GC_gcj_malloc_initialized
00000004 T GC_init_gcj_malloc
          U gcj_describe_type_fn
            ^^^^^^^^^^^^^^^^^^^^
Looks like it, yes...
A bit embarrasing, but could it be a simple matter of not having done a 
"make clean", but merely a "make install-exec"?

BR,
  Martin



More information about the Java mailing list