[fpc-devel] Mac OS X dylib exported symbols

Florian Klaempfl florian at freepascal.org
Tue Dec 19 18:12:41 CET 2006


Jonas Maebe schrieb:
> 
> On 19 dec 2006, at 17:23, Florian Klaempfl wrote:
> 
>>> The reason they are also exported, is that they are global symbols
>>> (i.e., they appear in the interface of a unit). I know the manual states
>>> that no symbols will be exported unless you mention them in the export
>>> statement, but afaik this is wrong in general (except maybe on Windows?)
>>
>> IIRC it's true for Linux too.
> 
> Not in my experience (this is tests/test/tlibrary1 on Linux/i386):
> 
> $ nm libtlibrary1.so |less
> 00006450 A __bss_start
> 00031ea9 T DEBUGEND_SI_DLL
> 00031e60 T DEBUGEND_SYSTEM
> 00035858 D DEBUGINFO_SI_DLL
> 000320e0 D DEBUGINFO_SYSTEM
> 00031e60 T DEBUGSTART_SI_DLL
> 00019770 T DEBUGSTART_SYSTEM
> 00032000 A _DYNAMIC
> 00006450 A _edata
> 00006450 A _end
> 0001ca60 T fpc_abs_real
> 00029610 T FPC_ABSTRACTERROR
> 00029610 T fpc_abstracterrorintern
> 00028490 T fpc_addref
> 00028490 T FPC_ADDREF
> 00020890 T fpc_ansistr_append_ansistring
> 00020890 T FPC_ANSISTR_APPEND_ANSISTRING
> 
> All these "T" symbols are exported afaik.

Strange, I thought I fixed this. Might have been something different ;)



More information about the fpc-devel mailing list