public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* AIX 5.1 and g++ 3.3
@ 2003-05-30  8:09 Albert Chin
  2003-05-30 16:31 ` Mark Mitchell
  0 siblings, 1 reply; 2+ messages in thread
From: Albert Chin @ 2003-05-30  8:09 UTC (permalink / raw)
  To: gcc

I've built GCC 3.3 on AIX 4.3.2 and AIX 5.1 and tried to build
gperf-3.0 against it. Building gperf succeeded on 4.3.2 but I ran into
an odd error on 5.1. We build GCC twice, once to /opt/TWWfsw/gcc33 and
again to /opt/TWWfsw/gcc33r. The second build installs only the
runtime libraries to /opt/TWWfsw/gcc33r while /opt/TWWfsw/gcc33 is a
full install. The idea behind this is that we -blibpath the runtime
library directory so the full GCC build isn't needed as a dependency
for programs that link against it.

On AIX 5.1, running the final gperf binary gave linker errors about
unresolved symbols. Running nm on libstdc++.a showed the problem:
  $ cd /opt/build/gperf-3.0/src
  $ ./gperf -h
  exec(): 0509-036 Cannot load program ./gperf because of the following
  errors:
          0509-130 Symbol resolution failed for gperf because:
          0509-136   Symbol _GLOBAL__F__GLOBAL__I__ZNSt21__ctype_abstract_baseIcED0Ev_opt_build_gcc_3.3_libstdc___v3_src_locale_inst.cchvgpjb (number 46) is not exported from

  $ cd /opt/TWWfsw/gcc33/lib
  $ nm libstdc++.a | grep _GLOBAL__F__GLOBAL__I__ | \
    grep ctype_abstract_base | \
    grep opt_build_gcc_3.3_libstdc___v3_src_locale_inst.cc
  _GLOBAL__F__GLOBAL__I__ZNSt21__ctype_abstract_baseIcED0Ev_opt_build_gcc_3.3_libstdc___v3_src_locale_inst.cchvgpjb D   536882124
  _GLOBAL__F__GLOBAL__I__ZNSt21__ctype_abstract_baseIcED0Ev_opt_build_gcc_3.3_libstdc___v3_src_locale_inst.cchvgpjb D      102860

  $ cd /opt/TWWfsw/gcc33r/lib
  $ nm libstdc++.a | grep _GLOBAL__F__GLOBAL__I__ | \
    grep ctype_abstract_base | \
    grep opt_build_gcc_3.3_libstdc___v3_src_locale_inst.cc
  _GLOBAL__F__GLOBAL__I__ZNSt21__ctype_abstract_baseIcED0Ev_opt_build_gcc_3.3_libstdc___v3_src_locale_inst.ccJEqnjb D   536882124
  _GLOBAL__F__GLOBAL__I__ZNSt21__ctype_abstract_baseIcED0Ev_opt_build_gcc_3.3_libstdc___v3_src_locale_inst.ccJEqnjb D      102860

The difference is the final 6 characters of the symbol. Is it odd that
a rebuild with a different installation prefix would have the final 6
characters different?

-- 
albert chin (china@thewrittenword.com)

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: AIX 5.1 and g++ 3.3
  2003-05-30  8:09 AIX 5.1 and g++ 3.3 Albert Chin
@ 2003-05-30 16:31 ` Mark Mitchell
  0 siblings, 0 replies; 2+ messages in thread
From: Mark Mitchell @ 2003-05-30 16:31 UTC (permalink / raw)
  To: gcc


> The difference is the final 6 characters of the symbol. Is it odd that
> a rebuild with a different installation prefix would have the final 6
> characters different?

No, there's intentional randomness there.  Set
get_file_function_name_long in tree.c.

-- 
Mark Mitchell
CodeSourcery, LLC
mark@codesourcery.com

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-05-30 15:52 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-30  8:09 AIX 5.1 and g++ 3.3 Albert Chin
2003-05-30 16:31 ` Mark Mitchell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).