[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: difference between default behaviour of GNU nm and AIX nm (symbol de
From: |
Albert Chin |
Subject: |
Re: difference between default behaviour of GNU nm and AIX nm (symbol demangling) |
Date: |
Mon, 24 Jun 2002 08:59:17 -0500 |
User-agent: |
Mutt/1.2.5i |
On Mon, Jun 24, 2002 at 01:17:56PM +0200, Laurent Vivier wrote:
> Low-level symbol demangling is not made by default with GNU nm, but it
> is with AIX nm.
> This creates some problems when exporting symbols from libraries.
>
> ...
>
> The proposed solution is as following:
>
> *** ../../link/link/src/libtool/libtool.m4 Tue Sep 11 05:16:01 2001
> --- libtool.m4 Mon Jun 24 10:45:34 2002
> ***************
> *** 3471,3477 ****
> # nm: unknown option "B" ignored
> # Tru64's nm complains that /dev/null is an invalid object file
> if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep
> '(/dev/null|Invalid file or object type)' >/dev/null; then
> ! lt_cv_path_NM="$tmp_nm -B"
> break
> elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep
> /dev/null >/dev/null; then
> lt_cv_path_NM="$tmp_nm -p"
> --- 3471,3493 ----
> # nm: unknown option "B" ignored
> # Tru64's nm complains that /dev/null is an invalid object file
> if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep
> '(/dev/null|Invalid file or object type)' >/dev/null; then
> ! # AIX needs to suppress demangling for C++ to work correctly
> ! # AIX nm : The default is to demangle all C++ symbol names
> ! # GNU nm : The default is to not demangle low-level symbol
> names.
> ! case $host_os in
> ! aix*)
Is this the default behaviour for GNU nm regardless of platform? If
so, I say test for GNU nm rather than the host OS and act accordingly.
Do other platforms (i.e. Linux) with GNU nm have the same problem?
--
albert chin (address@hidden)