sometimes 'cmake' does a 'strip' during install of the library [which
can delete the debug symbols]. We had to track this down for one of
the cmake packages. I don't remember what we did to workarround it..

>>
petsc@es:/scratch/petsc/petsc/arch-linux-pkgs-valgrind/lib$ file 
libsuperlu_dist.so.5.0.0
libsuperlu_dist.so.5.0.0: ELF 64-bit LSB shared object, x86-64, version 1 
(SYSV), dynamically linked, not stripped
<<

looks like superlu_dist installed by petsc is not stripped. Perhaps
you can try:

file 
/home/xiaoye/Dropbox/Codes/SuperLU/superlu_dist.git/lib/libsuperlu_dist.so.5.0.0

Satish

On Tue, 1 Mar 2016, Barry Smith wrote:

> 
>   Satish will know far better than me. I only use Linux when my Mac OS fails 
> me :-(
> 
> 
> > On Mar 1, 2016, at 8:41 PM, Xiaoye S. Li <[email protected]> wrote:
> > 
> > This is on linux (ubunto).  I did compile with -g, but only the example 
> > driver (which is outside library) shows the line number, the routine in the 
> > *.so does not show line number, see this:
> > 
> > ==31609== Conditional jump or move depends on uninitialised value(s)
> > ==31609==    at 0x51EED86: MPIC_Waitall (in 
> > /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> > ==31609==    by 0x5148F99: MPIR_Alltoallv_intra (in 
> > /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> > ==31609==    by 0x5149916: MPIR_Alltoallv (in 
> > /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> > ==31609==    by 0x51499F6: MPIR_Alltoallv_impl (in 
> > /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> > ==31609==    by 0x514A0C7: PMPI_Alltoallv (in 
> > /home/xiaoye/mpich-install/lib/libmpi.so.12.1.0)
> > ==31609==    by 0x4E7C56A: pdCompRow_loc_to_CompCol_global (in 
> > /home/xiaoye/Dropbox/Codes/SuperLU/superlu_dist.git/lib/libsupe\
> > rlu_dist.so.5.0.0)
> > ==31609==    by 0x4E71761: pdgssvx (in 
> > /home/xiaoye/Dropbox/Codes/SuperLU/superlu_dist.git/lib/libsuperlu_dist.so.5.0.0)
> > ==31609==    by 0x401400: main (pddrive.c:171)
> > 
> > 
> > Here are the flags:
> > 
> > C_FLAGS =  -DUSE_VENDOR_BLAS -DAdd_ -DDEBUGlevel=0 -DPRNTlevel=0 -std=c99 
> > -g -fPIC -I/home/xiaoye/Dropbox/Codes/SuperLU/superl\
> > u_dist.git/SRC -I/home/xiaoye/lib/parmetis-4.0.3/include 
> > -I/home/xiaoye/lib/parmetis-4.0.3/metis/include -I/home/xiaoye/mpich-\
> > install/include
> > 
> > 
> > Any idea?
> > Sherry
> > 
> > 
> > On Tue, Mar 1, 2016 at 6:00 PM, Barry Smith <[email protected]> wrote:
> > 
> > > On Mar 1, 2016, at 7:41 PM, Xiaoye S. Li <[email protected]> wrote:
> > >
> > > Barry,
> > >
> > > I am cleaning up the valgrind errors. I did a build with shared library 
> > > option, but valgrind doesn't give me the source code line number.  Is it 
> > > true that I need to build as static library?
> > 
> >   No but if you are running on an Apple you may need the additional 
> > valgrind option --dsymutil=yes  (yes it is totally goofy that it doesn't 
> > just do this automatically). Also, of course, the source code needs be 
> > compiled with the -g option.
> > 
> >   Barry
> > 
> > >
> > > Sherry
> > >
> > 
> > 
> 
> 

Reply via email to