This repros with the nm from the AIX toolbox (version 2.14), but it also repros with a copy of nm I built as part of a cross compiler (version 2.17 from FC6 64bit to AIX 5.3.0.0). On Linux, even after a binary has been stripped, the dynamic symbols can still be retrieved. The following commands show this with hello world: [kyle@ryoko ~]$ gcc hello.c -o hello [kyle@ryoko ~]$ strip hello [kyle@ryoko ~]$ nm hello nm: hello: no symbols [kyle@ryoko ~]$ nm -D hello w __gmon_start__ U __libc_start_main U puts [kyle@ryoko ~]$ On AIX, nm does not display these symbols, even though the native dump program can still access them: [testuser@aix64build ~]$ gcc hello.c -o hello [testuser@aix64build ~]$ /opt/freeware/bin/nm hello | head 00000000100001f0 t 00000000100069fc T .$RESTF14 0000000010006a00 T .$RESTF15 0000000010006a04 T .$RESTF16 0000000010006a08 T .$RESTF17 0000000010006a0c T .$RESTF18 0000000010006a10 T .$RESTF19 0000000010006a14 T .$RESTF20 0000000010006a18 T .$RESTF21 0000000010006a1c T .$RESTF22 [testuser@aix64build ~]$ /opt/freeware/bin/nm hello -D | head /opt/freeware/bin/nm: hello: No symbols [testuser@aix64build ~]$ strip hello [testuser@aix64build ~]$ /opt/freeware/bin/nm hello | head /opt/freeware/bin/nm: hello: no symbols [testuser@aix64build ~]$ /opt/freeware/bin/nm hello -D | head /opt/freeware/bin/nm: hello: No symbols [testuser@aix64build ~]$ dump -T hello hello: ***Loader Section*** ***Loader Symbol Table Information*** [Index] Value Scn IMEX Sclass Type IMPid Name [0] 0x20000b9c 0x0002 0x00 0x05 0x1 0x0000 __rtinit [1] 0x0000e008 0x0000 0x08 0x07 0x0 0x0001 ___memset [2] 0x0000f000 0x0000 0x08 0x07 0x0 0x0001 ___memmove [3] 0x00000000 0x0000 0x08 0x05 0x0 0x0001 errno [4] 0x00000000 0x0000 0x08 0x0a 0x0 0x0001 malloc [5] 0x00000000 0x0000 0x08 0x0a 0x0 0x0001 free [6] 0x00000000 0x0000 0x08 0x0a 0x0 0x0001 exit [7] 0x00000000 0x0000 0x08 0x0a 0x0 0x0001 strlen [8] 0x00000000 0x0000 0x08 0x0a 0x0 0x0001 abort [9] 0x00000000 0x0000 0x08 0x0a 0x0 0x0001 printf [10] 0x00000000 0x0000 0x08 0x0a 0x0 0x0001 __strtollmax [11] 0x00000000 0x0000 0x08 0x0a 0x0 0x0001 __mod_init [12] 0x00000000 0x0000 0x08 0x05 0x0 0x0001 __crt0v [13] 0x00000000 0x0000 0x08 0x05 0x0 0x0001 __malloc_user_defined_name [14] 0x20000c00 0x0002 0x04 0x0a 0x1 0x0000 __start [testuser@aix64build ~]$
Created attachment 1649 [details] The hello world program from AIX already stripped
Created attachment 1650 [details] hello world source code
Created attachment 13800 [details] likely incomplete patch