casseopea2 / gperftools

Automatically exported from code.google.com/p/gperftools
BSD 3-Clause "New" or "Revised" License
1 stars 0 forks source link

perftools issue with glob when Heimdal is installed #96

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Build on CentOS5 64-bit with Heimdal also installed
2. Try to install it

What is the expected output? What do you see instead?

I expect success, instead I get:

[root@freelancer google-perftools-1.0]# make install
/bin/sh ./libtool --tag=CXX --mode=link g++ -Wall -Wwrite-strings
-Woverloaded-virtual -Wno-sign-compare -fno-omit-frame-pointer  -g -O2   -o
sampling_test -g -pthread  sampling_test-sampling_test.o  libtcmalloc.la
g++ -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare
-fno-omit-frame-pointer -g -O2 -o .libs/sampling_test -g -pthread
sampling_test-sampling_test.o  ./.libs/libtcmalloc.so -Wl,--rpath
-Wl,/opt/zimbra/tcmalloc-1.0/lib
./.libs/libtcmalloc.so: undefined reference to `rk_globfree(rk_glob_t*)'
./.libs/libtcmalloc.so: undefined reference to `rk_glob(char const*, int,
int (*)(char const*, int), rk_glob_t*)'
collect2: ld returned 1 exit status

What version of the product are you using? On what operating system?

Version 1.0 on CentOS5 64-bit

The problem comes from the include/roken/glob.h header shipped with Heimdal.

Please provide any additional information below.

I don't know where it's picking these symbols up.  It worked fine with
version 99.2.

[root@freelancer google-perftools-1.0]# find . -name "*" | xargs grep rk_glob
Binary file ./libtcmalloc_la-heap-profile-table.o matches
Binary file ./.libs/libtcmalloc.so.0 matches
Binary file ./.libs/libtcmalloc.a matches
Binary file ./.libs/libtcmalloc_la-heap-profile-table.o matches
Binary file ./.libs/libtcmalloc.so matches
Binary file ./.libs/libtcmalloc.so.0.0.0 matches
[root@freelancer google-perftools-1.0]# find . -name "*" | xargs grep
rk_globfree
Binary file ./libtcmalloc_la-heap-profile-table.o matches
Binary file ./.libs/libtcmalloc.so.0 matches
Binary file ./.libs/libtcmalloc.a matches
Binary file ./.libs/libtcmalloc_la-heap-profile-table.o matches
Binary file ./.libs/libtcmalloc.so matches
Binary file ./.libs/libtcmalloc.so.0.0.0 matches

Original issue reported on code.google.com by quanah.g...@gmail.com on 12 Jan 2009 at 6:11

GoogleCodeExporter commented 9 years ago
It looks like somehow you've got /usr/include/roken on your compiler's 
include-path
before /usr/include.  heap-profile-table.cc #includes <glob.h> -- it's possible
earlier versions of perftools didn't -- but that should be ok.  I think this is 
a
configuration issue on your end.

Original comment by csilv...@gmail.com on 12 Jan 2009 at 10:28

GoogleCodeExporter commented 9 years ago
I'm closing this bug, based on the above.  Feel free to reopen if you determine 
it's
a problem with perftools after all.

Original comment by csilv...@gmail.com on 3 Feb 2009 at 1:46