tags:

views:

88

answers:

0

When i generate the map file for my dll(which is statically linked to other libs) it does produce all symbols.

For e.g. the map will only show these entries for function defined in file l2cap.c

.text
0x6e30b930 0x60dc ......\bin\libGCIStack.a(l2ca_main.o)
0x6e30b930 L2CA_Process
0x6e30bba7 l2ca_main_AcceptDataReq
0x6e30bd6c l2ca_main_ReplyDataCnf
0x6e31183c l2ca_InitStreamingDebugData
0x6e30b98b CheckSendDataToHci
0x6e3118db l2ca_StoreStreamingDebugData
0x6e30bcef l2ca_main_GetHciHandle

However when i use objdump.exe on the .o file (i.e. l2cap.o for l2cap.c) it gives me all symbols.

Why is that the map file is not showing all symbols in this file.

The linker command i use is

*g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -shared -Wl,--out-implib,......\bin\libBTPlugin.a -o ......\bin\BTPlugin.dll object_script.BTPlugin.Debug -L"c:\Qt\2009.03\qt\lib" -Wl,-M -Wl,-Map,BTPlugin.map -Wl,--start-group ......\bin\libGCIStack.a ......\bin\libadaptation_sos.a ......\bin\libbt_support_srv.a ......\bin\libcommon.a ......\bin\libappsrvmgr.a -Wl,--end-group ......\bin\winmm.lib -lQtGuid4 -lQtCored4.*

So the question is how to include all symbols of .o file in map file? and why are they missed.