Win32, MacOS X 컴파일러 옵션 정리

|

Shared and static libraries information

Win32 MacOS X
Version [NT 4] [10.x]
1 compiler flag (position independent code) xxxx -fno-common
2a shared library creation flag /DLL cc -bundle, -dynamiclib
libtool -dynamic
2b shared library creation (C++) ?? ??
libtool -dynamic
2c static archiver (C++) ?? ??
libtool -static
3a library name /OUT:name -compatibility_version, -current_version
3b file extension .DLL .dylib
4 executable link options xxxx ??
5a runtime path specification /LIBPATH: -install_name <path>
5b Does not build the path for shared libraries into the executable ?? ??
6 controlling symbols /FORCE: MULTIPLE [UNRESOLVED] ??

Win32 MacOS X
7 exports file/link option
(see notes)
.def/__declspec(dllexport) ??
8 hiding symbols xxxx ??
9 runtime library path PATH DYLD_LIBRARY_PATH
DYLD_FALLBACK_LIBRARY_PATH
10 symbol binding xxxx ??
11 runtime debugging xxxx DYLD_BIND_AT_LAUNCH
DYLD_PRINT_LIBRARIES
DYLD_PREBIND_DEBUG
12 runtime preload ?? DYLD_INSERT_LIBRARIES
13 loader xxxx dyld
14 runtime performance xxxx xxxx

Win32 MacOS X
15 versioning /VERSION:major.minor ??
16 entry points DllMain xxxx
17 dynamic loading /
dynamic symbol access
LoadLibrary / GetProcAddress "man 3 dyld"
18 utilities DUMPBIN, depends, EXEHDR otool
19 documentation ?? man: ld, libtool, dyld, otool

Win32 MacOS X
And