libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

problems with AIX 4/5 and Visual Age compiler


From: ZIGLIO, Frediano, VF-IT
Subject: problems with AIX 4/5 and Visual Age compiler
Date: Thu, 30 Sep 2004 10:35:48 +0200

libtool 1.5.x has problems compiling shared library under AIX if Visual
Age it's used. Visual Age prefix all functions name with '.' however
libtool 1.5.x remove all symbols with '.'. 
>From libtool.m4 you can find such code

  aix4* | aix5*)
    # If we're using GNU nm, then we don't want the "-C" option.
    # -C means demangle to AIX nm, but means don't demangle with GNU nm
    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs
$convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2
== "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort
-u > $export_symbols'
    else
      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs
$convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2
== "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort
-u > $export_symbols'
    fi
    ;;

and

    aix4* | aix5*)
      if test "$host_cpu" = ia64; then
        # On IA64, the linker does run time linking by default, so we
don't
        # have to do anything special.
        aix_use_runtimelinking=no
        exp_sym_flag='-Bexport'
        no_entry_flag=""
      else
        # If we're using GNU nm, then we don't want the "-C" option.
        # -C means demangle to AIX nm, but means don't demangle with GNU
nm
        if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
          _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs
$convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2
== "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort
-u > $export_symbols'
        else
          _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs
$convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2
== "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort
-u > $export_symbols'
        fi
        aix_use_runtimelinking=no

As you can see awk strip symbols that starts with '.', so linking
library give a lot of undefined symbols.
I have nor AIX nor Visual Age, I received this report from FreeTDS
(www.freetds.org) mailing list.

freddy77




reply via email to

[Prev in Thread] Current Thread [Next in Thread]