From: Rick K. <rk...@nc...> - 2008-01-23 13:21:39
|
Sanjay - This is, I think, a situation that has been reported previously - see the following earlier post to the perfsuite-users mailing list: http://sourceforge.net/mailarchive/forum.php?thread_name=Pine.LNX.4.64.0701171838120.18837%40osage.ncsa.uiuc.edu&forum_name=perfsuite-users Briefly, one workaround is to add the option --disable-binutils to the "configure" command line and rebuild PerfSuite. An alternate approach is to create a symbolic link named "libbfd.so" that points to the real libbfd-XXXXX.so (where XXXXX will differ, depending on your Linux installation). BFD, for reasons that I don't know, doesn't follow the usual naming scheme for its shared library and therefore links against -lbfd attempt to use the static library, which is where the conflict arises. Note: you would need to have root privileges on your system in order to be able to create this link. Rick On Wed, 23 Jan 2008, Sanjay H A wrote: > Hello Sir > thanx > configure worked, sfter adding the paths to LD_LIBRARY_PATH, > > but when I make, I encountered these errors > > /bin/sh ../../../../libtool --tag=CC --mode=link gcc -g -O2 -o > libpsbfd.la -rpath /usr/local/perfsuite/lib/psbfd0.2 -lbfd -liberty > -version-info 1:0:0 libpsbfd_la-Bfd_control.lo libpsbfd_la-Bfd_init.lo > libpsbfd_la-Bfd_inquire.lo libpsbfd_la-Bfd_lookup.lo > gcc -shared .libs/libpsbfd_la-Bfd_control.o .libs/libpsbfd_la-Bfd_init.o > .libs/libpsbfd_la-Bfd_inquire.o .libs/libpsbfd_la-Bfd_lookup.o -lbfd > -liberty -Wl,-soname -Wl,libpsbfd.so.1 -o .libs/libpsbfd.so.1.0.0 > /usr/bin/ld: > /usr/lib/gcc/x86_64-redhat-linux/3.4.5/../../../../lib64/libbfd.a(bfd.o): > relocation R_X86_64_32 against `a local symbol' can not be used when > making a shared object; recompile with -fPIC > /usr/lib/gcc/x86_64-redhat-linux/3.4.5/../../../../lib64/libbfd.a: could > not read symbols: Bad value > collect2: ld returned 1 exit status > make[5]: *** [libpsbfd.la] Error 1 > make[4]: *** [all-recursive] Error 1 > make[3]: *** [all-recursive] Error 1 > make[2]: *** [all-recursive] Error 1 > make[1]: *** [all-recursive] Error 1 > make: *** [all] Error 2 > > > I am attaching Makefile > > Thanx > Regards > Sanjay > > > > > > > > > ---------[ Received Mail Content ]---------- > > Subject : Re: Perfsuite configuration error - PAPI libraries > > Date : Tue, 22 Jan 2008 17:54:32 -0600 (CST) > > From : Rick Kufrin <rk...@nc...> > > To : san...@ly... > > Cc : per...@li... > > > > Sanjay, > > > > It looks to me as though the perfctr user library is not > being picked up > > at runtime by the linker. As I recall, PAPI's test suite uses > static > > linking and therefore would not need to locate libperfctr.so, > however this > > is not the case with PerfSuite. > > > > You might try adding the directory or directories that > contain your builds > > and installs of PAPI's libraries and the Perfctr library > (these may be the > > same "lib" or "lib64" subdirectory) to your LD_LIBRARY_PATH, > and try > > again. If you still experience problems, then please advise > and we can > > investigate further. > > > > Rick > > > > -------------------------- > > From: Sanjay H A > > To: per...@li... > > Subject: Perfsuite configuration error - PAPI libraries > > > > Hi > > I went to install perfsuite (perfsuite-0.6.2a6) on AMD -64 > bit CENT > > OS > > > > Kernel version: 2.6.9-34.0.2.EL > > > > I downloaded the kernel-2.6.9-34.0.2.EL.src.rpm and > perfctr-2.6.25 > > and fallowed the instuction given by Install file of perfctr > to add > > the patch. > > ( before going to make mrproper, I am changing EXTRAVERSION > to > > -34.0.2.ELcustom) > > > > Then I rebooted the system. > > > > Then I installed perfctr. it went fine. > > > > Then I installed papi-3.5.0 by mentioning perfctr directory. > > That also went fine. > > > > Then I installed tdom, that also went fine. > > > > Then I went for configuring perfsuit with this command > > > > ./configure --with-papi=/usr/local/papi-3.5.0 > > --prefix=/usr/local/perfsuite --enable-mpi > > MPICPPFLAGS="-I/usr/local/mpich-1.2.6/ch_p4/include" > > --with-tdom=/usr/lib/tdom0.8.2 > > > > its end up with error. My config.log file says > > > > configure:25730: configuring PAPI support > > configure:25753: checking for PAPI_library_init in -lpapi > > configure:25796: gcc -o conftest -g -O2 conftest.c -lpapi > > -L/usr/local/papi-3.5.0/lib >&5 > > /usr/bin/ld: warning: libperfctr.so.6, needed by > > /usr/local/papi-3.5.0/lib/libpapi.so, not found (try using > -rpath or > > -rpath-link) > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `vperfctr_open' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `vperfctr_stop' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `vperfctr_read_pmc' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `_vperfctr_open' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `vperfctr_read_ctrs' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `perfctr_info_cpu_name' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `vperfctr_iresume' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `vperfctr_control' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `perfctr_info' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `vperfctr_read_tsc' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `rvperfctr_close' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `rvperfctr_stop' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `rvperfctr_read_ctrs' > > /usr/local/papi-3.5.0/lib/libpapi.so: undefined reference to > > `vperfctr_unlink' > > collect2: ld returned 1 exit status > > configure:25802: $? = 1 > > configure: failed program was: > > > > path is proper. > > > > > > Can you tell me where I am wrong. > > Any mistakes while adding the patch ? > > > > Thanx in advance > > Sanjay > > > > > |