You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stdcxx.apache.org by "Martin Sebor (JIRA)" <ji...@apache.org> on 2007/04/06 20:57:32 UTC

[jira] Created: (STDCXX-386) [XLC++] unsats building locale and localedef

[XLC++] unsats building locale and localedef
--------------------------------------------

                 Key: STDCXX-386
                 URL: https://issues.apache.org/jira/browse/STDCXX-386
             Project: C++ Standard Library
          Issue Type: Bug
    Affects Versions: 4.1.3
         Environment: XLC++ 7.0, 8.0 on AIX
            Reporter: Martin Sebor
         Assigned To: Martin Sebor
             Fix For: 4.2


Building stdcxx utilities in $BUILDDIR/bin with XLC++ 7.0 works when no targets are specified as well as when each target is specified separately. However, building both locale and localedef (in that order) fails with the linker errors below.

When using XLC++ 8.0 (and trunk) the localedef fails to link even with the default invocation of make. This is most likely because we reuse the same template registry for both programs. Quoting from the -qtemplateregistry section of the XLC++ 8.0 reference manual for AIX:

    Template registry files must not be shared between different programs. If there are two or more programs whose source is in the same directory, relying on the default template registry file stored in the current working directory will result in this situation, and may lead to incorrect results.

$ nice gmake clean >/dev/null && nice gmake locale localedef
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/locale.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/aliases.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/charmap.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/codecvt.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/collate.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/def.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/ctype.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/diagnostic.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/memchk.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/messages.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/monetary.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/numeric.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/path.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/scanner.cpp
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/time.cpp
xlCcore locale.o aliases.o charmap.o codecvt.o collate.o def.o ctype.o diagnostic.o memchk.o messages.o monetary.o numeric.o path.o scanner.o time.o -o locale -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -liconv -brtl   -qtemplateregistry=repository.ti -L/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/lib -lstd11s  -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc   -lm 
xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/localedef.cpp
xlCcore localedef.o aliases.o charmap.o codecvt.o collate.o ctype.o def.o diagnostic.o messages.o monetary.o numeric.o path.o time.o scanner.o -o localedef -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -liconv -brtl   -qtemplateregistry=repository.ti -L/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/lib -lstd11s  -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc   -lm 
ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t> > >::find(const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::__rb_tree(const std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >&,const std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >&)
ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::~__rb_tree()
ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<wchar_t,std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,__rw::__select1st<std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,wchar_t>,std::less<wchar_t>,std::allocator<std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >::find(const wchar_t&)
ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::_C_insert(const std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,std::pair<__rw::__rw_debug_iter<__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >,__rw::__rw_tree_iter<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,long,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>*,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,__rw::__rw_rb_tree_node<std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >,__rw::__rw_tree_iter<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,long,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>*,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,__rw::__rw_rb_tree_node<std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >,bool>&,bool)
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
gmake: *** [localedef] Error 8


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (STDCXX-386) [XLC++] unsats building locale and localedef

Posted by "Martin Sebor (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/STDCXX-386?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12487354 ] 

Martin Sebor commented on STDCXX-386:
-------------------------------------

The committed patch restructures the utilities in a way that makes localedef capable of behaving like locale when passed --locale-mode as the first option. The locale utility is a just a dummy wrapper that calls localedef with that option. This eliminates the need for the symbols from the template registry in locale and avoids the linker error. In addition to dealing with this problem this has the added benefit of greatly reducing the footprint of the two utilities (since they shared most object files).

> [XLC++] unsats building locale and localedef
> --------------------------------------------
>
>                 Key: STDCXX-386
>                 URL: https://issues.apache.org/jira/browse/STDCXX-386
>             Project: C++ Standard Library
>          Issue Type: Bug
>    Affects Versions: 4.1.3
>         Environment: XLC++ 7.0, 8.0 on AIX
>            Reporter: Martin Sebor
>         Assigned To: Martin Sebor
>             Fix For: 4.2
>
>
> Building stdcxx utilities in $BUILDDIR/bin with XLC++ 7.0 works when no targets are specified as well as when each target is specified separately. However, building both locale and localedef (in that order) fails with the linker errors below.
> When using XLC++ 8.0 (and trunk) the localedef fails to link even with the default invocation of make. This is most likely because we reuse the same template registry for both programs. Quoting from the -qtemplateregistry section of the XLC++ 8.0 reference manual for AIX:
>     Template registry files must not be shared between different programs. If there are two or more programs whose source is in the same directory, relying on the default template registry file stored in the current working directory will result in this situation, and may lead to incorrect results.
> $ nice gmake clean >/dev/null && nice gmake locale localedef
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/locale.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/aliases.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/charmap.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/codecvt.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/collate.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/def.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/ctype.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/diagnostic.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/memchk.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/messages.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/monetary.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/numeric.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/path.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/scanner.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/time.cpp
> xlCcore locale.o aliases.o charmap.o codecvt.o collate.o def.o ctype.o diagnostic.o memchk.o messages.o monetary.o numeric.o path.o scanner.o time.o -o locale -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -liconv -brtl   -qtemplateregistry=repository.ti -L/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/lib -lstd11s  -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc   -lm 
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/localedef.cpp
> xlCcore localedef.o aliases.o charmap.o codecvt.o collate.o ctype.o def.o diagnostic.o messages.o monetary.o numeric.o path.o time.o scanner.o -o localedef -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -liconv -brtl   -qtemplateregistry=repository.ti -L/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/lib -lstd11s  -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc   -lm 
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t> > >::find(const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::__rb_tree(const std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >&,const std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >&)
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::~__rb_tree()
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<wchar_t,std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,__rw::__select1st<std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,wchar_t>,std::less<wchar_t>,std::allocator<std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >::find(const wchar_t&)
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::_C_insert(const std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,std::pair<__rw::__rw_debug_iter<__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >,__rw::__rw_tree_iter<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,long,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>*,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,__rw::__rw_rb_tree_node<std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >,__rw::__rw_tree_iter<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,long,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>*,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,__rw::__rw_rb_tree_node<std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >,bool>&,bool)
> ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
> gmake: *** [localedef] Error 8

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (STDCXX-386) [XLC++] unsats building locale and localedef

Posted by "Martin Sebor (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/STDCXX-386?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Sebor closed STDCXX-386.
-------------------------------

    Resolution: Fixed

Works now.

> [XLC++] unsats building locale and localedef
> --------------------------------------------
>
>                 Key: STDCXX-386
>                 URL: https://issues.apache.org/jira/browse/STDCXX-386
>             Project: C++ Standard Library
>          Issue Type: Bug
>    Affects Versions: 4.1.3
>         Environment: XLC++ 7.0, 8.0 on AIX
>            Reporter: Martin Sebor
>            Assignee: Martin Sebor
>             Fix For: 4.2
>
>
> Building stdcxx utilities in $BUILDDIR/bin with XLC++ 7.0 works when no targets are specified as well as when each target is specified separately. However, building both locale and localedef (in that order) fails with the linker errors below.
> When using XLC++ 8.0 (and trunk) the localedef fails to link even with the default invocation of make. This is most likely because we reuse the same template registry for both programs. Quoting from the -qtemplateregistry section of the XLC++ 8.0 reference manual for AIX:
>     Template registry files must not be shared between different programs. If there are two or more programs whose source is in the same directory, relying on the default template registry file stored in the current working directory will result in this situation, and may lead to incorrect results.
> $ nice gmake clean >/dev/null && nice gmake locale localedef
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/locale.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/aliases.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/charmap.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/codecvt.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/collate.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/def.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/ctype.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/diagnostic.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/memchk.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/messages.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/monetary.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/numeric.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/path.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/scanner.cpp
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/time.cpp
> xlCcore locale.o aliases.o charmap.o codecvt.o collate.o def.o ctype.o diagnostic.o memchk.o messages.o monetary.o numeric.o path.o scanner.o time.o -o locale -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -liconv -brtl   -qtemplateregistry=repository.ti -L/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/lib -lstd11s  -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc   -lm 
> xlCcore -c -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc  -g  -qtemplateregistry=repository.ti   /amd/devco/sebor/stdcxx-4.1.3/util/localedef.cpp
> xlCcore localedef.o aliases.o charmap.o codecvt.o collate.o ctype.o def.o diagnostic.o messages.o monetary.o numeric.o path.o time.o scanner.o -o localedef -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -liconv -brtl   -qtemplateregistry=repository.ti -L/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/lib -lstd11s  -I/amd/devco/sebor/stdcxx-4.1.3/include/ansi -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx-4.1.3-xlc-7.0.0.9-11s/include -I/amd/devco/sebor/stdcxx-4.1.3/include -I/amd/devco/sebor/stdcxx-4.1.3/include/loc   -lm 
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,wchar_t> > >::find(const std::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::__rb_tree(const std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >&,const std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >&)
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::~__rb_tree()
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<wchar_t,std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,__rw::__select1st<std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,wchar_t>,std::less<wchar_t>,std::allocator<std::pair<const wchar_t,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >::find(const wchar_t&)
> ld: 0711-317 ERROR: Undefined symbol: .__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >::_C_insert(const std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,std::pair<__rw::__rw_debug_iter<__rw::__rb_tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> > >,__rw::__rw_tree_iter<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,long,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>*,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,__rw::__rw_rb_tree_node<std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >,__rw::__rw_tree_iter<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,long,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>*,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>&,__rw::__rw_rb_tree_node<std::allocator<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int> >,std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,__rw::__select1st<std::pair<const std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >,bool>&,bool)
> ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
> gmake: *** [localedef] Error 8

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.