Re: symbol table problem

From: Mary Haley <haley_at_nyahnyahspammersnyahnyah>
Date: Wed Jun 05 2013 - 16:59:54 MDT

Hi Walter,

Thanks for providing the additional information. I've been puzzling over this error message myself, and your information below was very useful.

I'm not sure if you said earlier what version of NCL you have, but it looks like you might be running V6.1.2, which was compiled with gcc/gfortran V4.6.0 on a MacOS 10.6 system.

Long story short: you have an older gcc than what we built NCL with. You need to have gcc V4.6 or later installed on your system. I'm hoping you already have this, since I noticed you have gfortran V4.6.2.

To see if you already have a newer gcc on your system, you can start by looking in the same directory as your gfortran:

  which gfortran

For example, if the above reports "/usr/local/bin/gfortran", then type:

/usr/local/bin/gcc --version

If the above indicates that you do have "gcc" and that it is version 4.6.2, then try typing this:

nm /usr/local/lib/libgcc_s.1.dylib | grep ___emutls_get_address

to see if you get a line like:

000000000000fd90 T ___emutls_get_address

If you do, then I believe you simply need to tell "ncl" to look in /usr/local/lib before it looks in /usr/lib, in order to get the right "libgcc_s.1.dylib. You can do this with the DYLD_LIBRARY_PATH environment variable, or, you can try making sure that /usr/local/bin is on your search path before "/usr/bin". The search path route is the better one. You generally don't want to mess with DYLD_LIBRARY_PATH.

Here's how you might set your PATH if you go that route, or your DYLD_LIBRARY_PATH if you go that route.

Setting PATH from csh/tcsh:

setenv PATH /usr/local/bin:$PATH

Setting PATH from bash/ksh:

export PATH=/usr/local/bin:$PATH

If you decide to try the DYLD_LIBRARY_PATH, then the instructions are similar:

Setting DYLD_LIBRARY_PATH from csh/tcsh:

setenv DYLD_LIBRARY_PATH /usr/local/lib

or, if DYLD_LIBRARY_PATH is already set to something:

setenv DYLD_LIBRARY_PATH /usr/local/lib:$DYLD_LIBRARY_PATH

Setting DYLIB_LIBRARY_PATH from bash/sh/ksh:

export DYLD_LIBRARY_PATH=/usr/local/lib

or, if DYLD_LIBRARY_PATH is already set to something:

export DYLD_LIBRARY_PATH=/usr/local/lib:$DYLD_LIBRARY_PATH

The above commands can be put in your .bash_profile or .tcshrc or .cshrc (or similar) file, depending on what file you use to set up your environment.

If you don't have "gcc" in the same directory as "gfortran", then you will need to download and install it (using the same version and path as your gfortran). You should be able to find a new "gcc" from the same place that you got gfortran.

If the above works, or if you find another solution, please post it back to ncl-talk (and ncl-install if you are a member) so other people can benefit from the answer.

Thanks,

--Mary

On Jun 4, 2013, at 4:37 PM, Walter Hannah <whannah@atmos.colostate.edu> wrote:

> Dave,
>
> I was wondering what was happening last time I asked this question! We were having a bunch of emial issues here at that time. I just found those responses. Sorry about that.
>
> Here's some of the previously requested info:
>
> whannah@nereus:~\>sw_vers -productVersion
> 10.6.8
>
> whannah@nereus:~\>uname -a
> Darwin nereus.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun 7 16:32:41 PDT 2011; root:xnu-1504.15.3~1/RELEASE_X86_64 x86_64
>
> whannah@nereus:~\>gcc --version
> i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)
> Copyright (C) 2007 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions. There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> whannah@nereus:~\>gfortran --version
> GNU Fortran (GCC) 4.6.2 20111019 (prerelease)
> Copyright (C) 2011 Free Software Foundation, Inc.
>
> GNU Fortran comes with NO WARRANTY, to the extent permitted by law.
> You may redistribute copies of GNU Fortran
> under the terms of the GNU General Public License.
> For more information about these matters, see the file named COPYING
>
> whannah@nereus:~\>otool -L `which ncl`
> /Users/whannah/NCL/bin/ncl:
> /usr/X11/lib/libXrender.1.dylib (compatibility version 5.0.0, current version 5.0.0)
> /usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
> /usr/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.5)
> /usr/X11/lib/libXpm.4.dylib (compatibility version 16.0.0, current version 16.0.0)
> /usr/X11/lib/libX11.6.dylib (compatibility version 9.0.0, current version 9.0.0)
> /usr/X11/lib/libXext.6.dylib (compatibility version 11.0.0, current version 11.0.0)
> /usr/local/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.15.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11)
> /usr/local/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
>
> I don't see a png library anywhere. I used to have the /opt/xxx/ directories listed first in my PATH because of some other problems, I forget the exact reason though.
>
> Walter
>
> On 6/4/13 4:00 PM, Dave Allured - NOAA Affiliate wrote:
>> Walter,
>>
>> Are you not receiving e-mails from ucar.edu? You asked this question
>> last week, and got two replies on May 28. Both suggested causes and
>> asked for additional information. Please check your inbox, message
>> digests, spam folders, and the ncl-talk archives on the web, as a last
>> resort. Best wishes.
>>
>> --Dave
>>
>> On Tue, Jun 4, 2013 at 3:36 PM, Walter Hannah
>> <whannah@atmos.colostate.edu> wrote:
>>> Hi,
>>>
>>> I'm running OSX 10.6.8 and whenever I try to create a png file I get this
>>> error:
>>>
>>> dyld: lazy symbol binding failed: Symbol not found: ___emutls_get_address
>>> Referenced from: /Users/whannah/NCL/bin/ncl
>>> Expected in: /usr/lib/libSystem.B.dylib
>>>
>>> dyld: Symbol not found: ___emutls_get_address
>>> Referenced from: /Users/whannah/NCL/bin/ncl
>>> Expected in: /usr/lib/libSystem.B.dylib
>>>
>>> Trace/BPT trap
>>>
>>>
>>> This problem started after I installed VAPOR, but I'm not sure how its
>>> connected or how to fix it. Any ideas?
>>>
>>> Thanks,
>>> Walter
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>
>
> _______________________________________________
> ncl-talk mailing list
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk

_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
Received on Wed Jun 5 17:00:18 2013

This archive was generated by hypermail 2.1.8 : Tue Jun 11 2013 - 12:03:58 MDT