[cfe-dev] export symbol names with leading underscore
Glenn Ganz
gganz at egastones.ch
Wed Jun 22 13:23:54 PDT 2011
Hi
I'm working on the cocotron project. i try to make cocotron "clang"-ready.
I use clang as cross compiler (On OS X for Windows) and bintuils as linker (via gcc).
i got some linking erros like "Cannot export _strnstr: symbol not found"
i analyzed the problem. When you take a look into the object files you see the problem.
Glenn-Ganzs-iMac:bin glenn$ strings "/Users/glenn/Projects/glennganz-cocotron1-
clang/Foundation/build/Windows/i386/Foundation.build/Debug/Foundation-Windows-i386
(clang).build/Objects-normal/i386/CFBase.o" | grep strnstr
strnstr
strnstr
-export:_kCFAllocatorDefault,data -export:_kCFAllocatorSystemDefault,data -
export:_kCFAllocatorMalloc,data -export:_kCFAllocatorMallocZone,data -
export:_kCFAllocatorNull,data -export:_kCFAllocatorUseContext,data -export:_CFAllocatorGetDefault
-export:_CFAllocatorSetDefault -export:_CFAllocatorGetTypeID -export:_CFAllocatorCreate -
export:_CFAllocatorGetContext -export:_CFAllocatorGetPreferredSizeForSize -
export:_CFAllocatorAllocate -export:_CFAllocatorDeallocate -export:_CFAllocatorReallocate -
export:_CFGetTypeID -export:_CFRetain -export:_CFRelease -export:_CFGetRetainCount -
export:_CFGetAllocator -export:_CFHash -export:_CFEqual -export:_CFCopyTypeIDDescription -
export:_CFCopyDescription -export:_CFMakeCollectable -export:_sleep -export:_strlcpy -
export:_strnstr -export:_bzero -export:_bcopy -export:_bcmp -export:_mkstemps -export:_random
_strnstr
Glenn-Ganzs-iMac:bin glenn$ strings "/Users/glenn/Projects/glennganz-cocotron1-
clang/Foundation/build/Windows/i386/Foundation.build/Debug/Foundation-Windows-
i386.build/Objects-normal/i386/CFBase.o" | grep strnstr
strnstr:F(0,77)
-export:kCFAllocatorUseContext,data -export:kCFAllocatorNull,data -
export:kCFAllocatorMallocZone,data -export:kCFAllocatorMalloc,data -
export:kCFAllocatorSystemDefault,data -export:kCFAllocatorDefault,data -export:random -
export:mkstemps -export:bcmp -export:bcopy -export:bzero -export:strnstr -export:strlcpy -
export:sleep -export:CFMakeCollectable -export:CFCopyDescription -
export:CFCopyTypeIDDescription -export:CFEqual -export:CFHash -export:CFGetAllocator -
export:CFGetRetainCount -export:CFRelease -export:CFRetain -export:CFGetTypeID -
export:CFAllocatorReallocate -export:CFAllocatorDeallocate -export:CFAllocatorAllocate -
export:CFAllocatorGetPreferredSizeForSize -export:CFAllocatorGetContext -export:CFAllocatorCreate
-export:CFAllocatorGetTypeID -export:CFAllocatorSetDefault -export:CFAllocatorGetDefault
the object file from gcc has no leading underscore in the export name.
Is there an option for clang to produce the export names without leading underscores?
Thanks
Glenn
More information about the cfe-dev
mailing list