From: William C. <wc...@re...> - 2008-10-29 14:01:22
|
I tried to build the latest snapshot of oprofile on a x86_64 Fedora 9 machine and found that it failed to compile. The make would fail with the following message: g++ -W -Wall -fno-common -ftemplate-depth-50 -Werror -g -O2 -o opreport opreport.o opreport_options.o common_option.o ../libpp/libpp.a ../libopt++/libopt++.a ../libregex/libop_regex.a ../libutil++/libutil++.a ../libop/libop.a ../libutil/libutil.a ../libdb/libodb.a -lpopt -lbfd -liberty -ldl ../libutil++/libutil++.a(bfd_support.o): In function `bfd_info::get_synth_symbols()': /home/wcohen/research/profiling/oprofile/oprofile.synth/libutil++/bfd_support.cpp:439: undefined reference to `bfd_elf64_powerpc_vec' /home/wcohen/research/profiling/oprofile/oprofile.synth/libutil++/bfd_support.cpp:439: undefined reference to `bfd_elf64_powerpcle_vec' collect2: ld returned 1 exit status Working backwards I found that the ./configure puts the following line in config.h: #define SYNTHESIZE_SYMBOLS 1 On non ppc machines this should be 0 rather than 1. The following checked in change causes the incorrect setting of the define: 2008-10-06 Maynard Johnson <may...@us...> * configure.in: * m4/binutils.m4: * m4/cellspubfdsupport.m4: Handle BFD's new dependency on libz Looks like that test is not quite correct. -Will |
From: Maynard J. <may...@us...> - 2008-10-29 22:28:17
|
William Cohen wrote: > > I tried to build the latest snapshot of oprofile on a x86_64 Fedora 9 machine > and found that it failed to compile. The make would fail with the following message: > > g++ -W -Wall -fno-common -ftemplate-depth-50 -Werror -g -O2 -o opreport > opreport.o opreport_options.o common_option.o ../libpp/libpp.a > ../libopt++/libopt++.a ../libregex/libop_regex.a ../libutil++/libutil++.a > ../libop/libop.a ../libutil/libutil.a ../libdb/libodb.a -lpopt -lbfd -liberty -ldl > ../libutil++/libutil++.a(bfd_support.o): In function > `bfd_info::get_synth_symbols()': > /home/wcohen/research/profiling/oprofile/oprofile.synth/libutil++/bfd_support.cpp:439: > undefined reference to `bfd_elf64_powerpc_vec' > /home/wcohen/research/profiling/oprofile/oprofile.synth/libutil++/bfd_support.cpp:439: > undefined reference to `bfd_elf64_powerpcle_vec' > collect2: ld returned 1 exit status > > > Working backwards I found that the ./configure puts the following line in config.h: > > #define SYNTHESIZE_SYMBOLS 1 This should be OK, since even on x86_64, the bfd library should have the bfd_elf64_powerpc[le]_vec symbols defined (works ok on my x86_64/sles 10 sp2 system). Are you by chance specifying the '--with-binutils' option on your configure command? Robert Richter reported a similar problem a couple weeks back. *Robert*, did you have any luck getting past the error? -Maynard > > On non ppc machines this should be 0 rather than 1. The following checked in > change causes the incorrect setting of the define: > > 2008-10-06 Maynard Johnson <may...@us...> > > * configure.in: > * m4/binutils.m4: > * m4/cellspubfdsupport.m4: Handle BFD's new dependency on libz > > > Looks like that test is not quite correct. > > -Will > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > oprofile-list mailing list > opr...@li... > https://lists.sourceforge.net/lists/listinfo/oprofile-list |
From: Robert R. <rob...@am...> - 2008-11-01 01:14:37
|
On 29.10.08 17:27:47, Maynard Johnson wrote: > William Cohen wrote: >> I tried to build the latest snapshot of oprofile on a x86_64 Fedora 9 >> machine and found that it failed to compile. The make would fail with the >> following message: >> g++ -W -Wall -fno-common -ftemplate-depth-50 -Werror -g -O2 -o opreport >> opreport.o opreport_options.o common_option.o ../libpp/libpp.a >> ../libopt++/libopt++.a ../libregex/libop_regex.a ../libutil++/libutil++.a >> ../libop/libop.a ../libutil/libutil.a ../libdb/libodb.a -lpopt -lbfd >> -liberty -ldl >> ../libutil++/libutil++.a(bfd_support.o): In function >> `bfd_info::get_synth_symbols()': >> /home/wcohen/research/profiling/oprofile/oprofile.synth/libutil++/bfd_support.cpp:439: >> undefined reference to `bfd_elf64_powerpc_vec' >> /home/wcohen/research/profiling/oprofile/oprofile.synth/libutil++/bfd_support.cpp:439: >> undefined reference to `bfd_elf64_powerpcle_vec' >> collect2: ld returned 1 exit status >> Working backwards I found that the ./configure puts the following line in >> config.h: >> #define SYNTHESIZE_SYMBOLS 1 > This should be OK, since even on x86_64, the bfd library should have the > bfd_elf64_powerpc[le]_vec symbols defined (works ok on my x86_64/sles 10 > sp2 system). Are you by chance specifying the '--with-binutils' option on > your configure command? I am using sys-devel/binutils-2.18-r3 on Gentoo. It seems the symbol is not defined there. > Robert Richter reported a similar problem a couple weeks back. *Robert*, > did you have any luck getting past the error? The printk() solved the problem. -Robert -- Advanced Micro Devices, Inc. Operating System Research Center email: rob...@am... |