Linux equivalent of dumpbin /exports filename.dll ?

Joseph Kubik josephkubik-Re5JQEeQqe8AvxtiuMwx3w at public.gmane.org
Mon Aug 15 19:23:09 UTC 2005


The .text lines are functions *most* of the time.
-Joseph-

On 8/15/05, Alex Maynard <amaynard-vQ8rsROW2HJSpjfjxSPG1fd9D2ou9A/h at public.gmane.org> wrote:
> 
> On Sat, 13 Aug 2005, Joseph Kubik wrote:
> 
> > objdump -t foo.so
> > This, or some other option to objdump may help you out.
> > Also, 'ldd Guass' will show you what libraries Guass is trying to load.
> >
> > -Joseph-
> 
> Joseph,
> 
> Thank you very much for the suggestion. I've tried both objdump -t foo.so
> and objdump -Ct foo.so.  I'm not quite sure how to read the output I get.
> In other words, I'm not quite sure which name refers to the function. The
> orginal function name in the Matlab code was ptv.  The entries in
>  objdump -t foo.so that include  the term ptv are:
> 
> 00000000 l    df *ABS*  00000000              ptv.c
> 00000000 l    df *ABS*  00000000              ptv_mcc_component_data.c
> 00001200 g     O .rodata        00000101              __MCC_ptv_session_data
> 000027b0 g     O .data  00000004              __MCC_ptv_lib_path_data
> 0000130c g     O .rodata        00000004              __MCC_ptv_lib_path_data_count
> 000027b8 g     O .data  00000004              __MCC_ptv_mcr_runtime_options
> 00001310 g     O .rodata        00000004       __MCC_ptv_mcr_application_option_count
> 00000f38 g     F .text  0000002e              ptvInitialize
> 000027ac g     O .data  00000004              __MCC_ptv_classpath_data
> 00002704 g     O .data  00000004              __MCC_ptv_root_data
> 00000e80 g     F .text  000000b7              ptvInitializeWithHandlers
> 00000fd0 g     F .text  00000058              mlfPtv
> 00002700 g     O .data  00000004              __MCC_ptv_name_data
> 00000f9a g     F .text  00000036              mlxPtv
> 00002720 g     O .data  0000008c              __MCC_ptv_matlabpath_data
> 000027b4 g     O .data  00000004              __MCC_ptv_mcr_application_options
> 00000f66 g     F .text  00000033              ptvTerminate
> 000010a0 g     O .rodata        00000141       __MCC_ptv_public_data
> 00001308 g     O .rodata        00000004       __MCC_ptv_classpath_data_count
> 00001314 g     O .rodata        00000004       __MCC_ptv_mcr_runtime_option_count
> 00001304 g     O .rodata        00000004        __MCC_ptv_matlabpath_data_count
> 
> I have tried some of these out, but so far haven't found the right
> function name.
> 
> Thanks again very much.
> 
> Alex
> 
> 
> Below is the full output of objdump.
> 
> 
> 
> 
> ptv.so:     file format elf32-i386
> 
> SYMBOL TABLE:
> 000000b4 l    d  .hash  00000000
> 00000250 l    d  .dynsym        00000000
> 00000650 l    d  .dynstr        00000000
> 00000952 l    d  .gnu.version   00000000
> 000009d4 l    d  .gnu.version_r 00000000
> 00000a24 l    d  .rel.dyn       00000000
> 00000c04 l    d  .rel.plt       00000000
> 00000c4c l    d  .init  00000000
> 00000c64 l    d  .plt   00000000
> 00000d04 l    d  .text  00000000
> 0000105c l    d  .fini  00000000
> 00001080 l    d  .rodata        00000000
> 00001680 l    d  .eh_frame_hdr  00000000
> 000026e0 l    d  .data  00000000
> 000027bc l    d  .eh_frame      00000000
> 00002930 l    d  .dynamic       00000000
> 00002a08 l    d  .ctors 00000000
> 00002a10 l    d  .dtors 00000000
> 00002a18 l    d  .jcr   00000000
> 00002a1c l    d  .got   00000000
> 00002a90 l    d  .bss   00000000
> 00000000 l    d  .comment       00000000
> 00000000 l    d  .debug_aranges 00000000
> 00000000 l    d  .debug_info    00000000
> 00000000 l    d  .debug_abbrev  00000000
> 00000000 l    d  .debug_line    00000000
> 00000000 l    d  *ABS*  00000000
> 00000000 l    d  *ABS*  00000000
> 00000000 l    d  *ABS*  00000000
> 00000000 l    df *ABS*  00000000              initfini.c
> 00000d04 l     F .text  00000000              call_gmon_start
> 00000000 l    df *ABS*  00000000              crtstuff.c
> 00002a08 l     O .ctors 00000000              __CTOR_LIST__
> 00002a10 l     O .dtors 00000000              __DTOR_LIST__
> 000027bc l     O .eh_frame      00000000              __EH_FRAME_BEGIN__
> 00002a18 l     O .jcr   00000000              __JCR_LIST__
> 000026e4 l     O .data  00000000              p.0
> 00002a90 l     O .bss   00000001              completed.1
> 00000d28 l     F .text  00000000              __do_global_dtors_aux
> 00000d90 l     F .text  00000000              frame_dummy
> 00000000 l    df *ABS*  00000000              crtstuff.c
> 00002a0c l     O .ctors 00000000              __CTOR_END__
> 00002a14 l     O .dtors 00000000              __DTOR_END__
> 0000292c l     O .eh_frame      00000000              __FRAME_END__
> 00002a18 l     O .jcr   00000000              __JCR_END__
> 00001028 l     F .text  00000000              __do_global_ctors_aux
> 00000000 l    df *ABS*  00000000              initfini.c
> 00000000 l    df *ABS*  00000000              ptv.c
> 000026e8 l     O .data  00000004              _mcr_inst
> 00000dd0 l     F .text  0000003b              mclDefaultPrintHandler
> 00000e0c l     F .text  00000074              mclDefaultErrorHandler
> 00000000 l    df *ABS*  00000000              ptv_mcc_component_data.c
> 000026e0 l     O .data  00000000              .hidden __dso_handle
> 00001200 g     O .rodata        00000101
> __MCC_ptv_session_data
> 000027b0 g     O .data  00000004              __MCC_ptv_lib_path_data
> 00002930 g     O *ABS*  00000000              _DYNAMIC
> 0000130c g     O .rodata        00000004
> __MCC_ptv_lib_path_data_count
> 00000000       F *UND*  00000033              mclFeval@@v7.0
> 000027b8 g     O .data  00000004
> __MCC_ptv_mcr_runtime_options
> 00001310 g     O .rodata        00000004
> __MCC_ptv_mcr_application_option_count
> 00000c4c g     F .init  00000000              _init
> 00000f38 g     F .text  0000002e              ptvInitialize
> 000027ac g     O .data  00000004              __MCC_ptv_classpath_data
> 00002704 g     O .data  00000004              __MCC_ptv_root_data
> 00000000       O *UND*  00000004              stdout@@GLIBC_2.0
> 00000000       O *UND*  00000004              stderr@@GLIBC_2.0
> 00000000       F *UND*  0000005c
> mclInitializeComponentInstance@@v7.0
> 00000000       F *UND*  000000df              mclmcrInitialize@@v7.0
> 00000e80 g     F .text  000000b7              ptvInitializeWithHandlers
> 00000000       F *UND*  00000024              mclTerminateInstance@@v7.0
> 00002a90 g       *ABS*  00000000              __bss_start
> 00000fd0 g     F .text  00000058              mlfPtv
> 00002700 g     O .data  00000004              __MCC_ptv_name_data
> 0000105c g     F .fini  00000000              _fini
> 00000000       F *UND*  00000037              mclMlfFeval@@v7.0
> 00000000  w    F *UND*  00000098              __cxa_finalize@@GLIBC_2.1.3
> 00000f9a g     F .text  00000036              mlxPtv
> 00002a90 g       *ABS*  00000000              _edata
> 00002a1c g     O *ABS*  00000000              _GLOBAL_OFFSET_TABLE_
> 00002a94 g       *ABS*  00000000              _end
> 00002720 g     O .data  0000008c              __MCC_ptv_matlabpath_data
> 000027b4 g     O .data  00000004
> __MCC_ptv_mcr_application_options
> 00000f66 g     F .text  00000033              ptvTerminate
> 000010a0 g     O .rodata        00000141
> __MCC_ptv_public_data
> 00001308 g     O .rodata        00000004
> __MCC_ptv_classpath_data_count
> 00000000       F *UND*  00000171              fwrite@@GLIBC_2.0
> 00000000  w      *UND*  00000000              _Jv_RegisterClasses
> 00001314 g     O .rodata        00000004
> __MCC_ptv_mcr_runtime_option_count
> 00001304 g     O .rodata        00000004
> __MCC_ptv_matlabpath_data_count
> 00000000  w      *UND*  00000000              __gmon_start__
> 
> 
> 
> 
> >
> > On 8/13/05, Alex Maynard <amaynard-vQ8rsROW2HJSpjfjxSPG1fd9D2ou9A/h at public.gmane.org> wrote:
> > >
> > > Hello All,
> > >
> > > I know very little about libraries, so I apologize if this
> > > this turns out to be a very basic question.
> > >
> > > I was wondering if any one happens to know the linux equivalent of
> > > the following command in windows, used to find the function names in a
> > > shared library?:
> > >
> > > dumpbin /exports filename.dll
> > >
> > > The problem I'm having is that I have compiled a function to a .so
> > > file (using a unix matlab compiler) but have trouble calling it from a
> > > second application (Gauss). I found a posting on the web indicating that such
> > > functions are often given different names by compilers (the compilers
> > > append extra info. to the original name). So to call the function, I need to
> > > find out its new name. I found some instructions for doing this in MSDos
> > > at:
> > > http://www.eco.utexas.edu/cgi-bin/http2gophermail?server=gopher.eco.utexas.edu&request=R97754-102253-/mailing/gaussians.archive.1997
> > > which suggest using the dos command: dumpbin /exports filename.dll but
> > > haven't figured out how to translate this into linux.
> > >
> > > Cheers,
> > >
> > > Alex
> > >
> > >
> > > --
> > > The Toronto Linux Users Group.      Meetings: http://tlug.ss.org
> > > TLUG requests: Linux topics, No HTML, wrap text below 80 columns
> > > How to UNSUBSCRIBE: http://tlug.ss.org/subscribe.shtml
> > >
> > --
> > The Toronto Linux Users Group.      Meetings: http://tlug.ss.org
> > TLUG requests: Linux topics, No HTML, wrap text below 80 columns
> > How to UNSUBSCRIBE: http://tlug.ss.org/subscribe.shtml
> >
> 
> 
> 
> --
> The Toronto Linux Users Group.      Meetings: http://tlug.ss.org
> TLUG requests: Linux topics, No HTML, wrap text below 80 columns
> How to UNSUBSCRIBE: http://tlug.ss.org/subscribe.shtml
>
--
The Toronto Linux Users Group.      Meetings: http://tlug.ss.org
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://tlug.ss.org/subscribe.shtml





More information about the Legacy mailing list