GC symbols no longer exported (on Debian) from libgcj 8 and up
Erik Groeneveld <[email protected]>
| Newsgroups | gmane.comp.gcc.java.devel |
|---|---|
| Message-ID | <[email protected]> |
L.S., I have an application that uses libgcj (on Debian) and which needs to have access to the garbage collector to fine tune things. Up to libgcj 7, it was possible to create a extern/forward declaration for e.g. GC_free, and when the application is linked, the symbol would be resolved correctly. Starting with libgcj 8 and up, the symbols of libgcj are no longer exported it seems. On Linux, 'nm' reports that the symbols are of type 't', which means local, while up to libgcj 7, it reported them as 'T', which means global. Symbols of type 't' are not used for resolving external symbols, and hence my program does not link anymore. I dived into the package build for Debian (by Mattias Klose) and found that lot of things could have caused this behavior. However, what I can not find out is if this change was intentional or that is is caused by newer versions of the build tools. If it was intentional, my question is how I can get access to the GC? If it is not intentional, my question is if it is appropriate to report a bug? Best regards Erik J. Groeneveld