On 20 Jan 2011, at 16:20, Ludovic Courtès wrote:
In 'guile-config link', the flag '-lgc' is missing; it is needed when
linking smobs. The function SCM_NEWSMOB calls
GC_register_finalizer_no_order() in header gc.h
It shouldn’t be needed when libguile is a shared library, at least not
on ELF platforms where the shared library contains ‘NEEDED’ headers.
It is needed when libguile is static, but in that case you should use
‘pkg-config guile-2.0 --libs --static’ (‘guile-config’ is deprecated.)
The file gc.h says that it is only for Java implementations. But as
noted above, it is called by SCM_NEWSMOB, so until it is taken away, -
lgc must be used, otherwise the linker will require it. My platform is
otherwise Mac OS X; objective code format is Mach-O.