- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have python3.4 which I compiled on my own using Intel icc. I have installed netcdf4 library for python on my Ubuntu 14.04. The install works fine and when I run it I get the error below
This is my LD_LIBRARY_PATH setenv LD_LIBRARY_PATH /usr/local/lib:/usr/lib/x86_64-linux-gnu/libgfortran.so.3
Do I need to add anything to LD_LIBRARY_PATH ?
Traceback (most recent call last):
File "display.py", line 5, in <module>
from netCDF4 import Dataset # http://code.google.com/p/netcdf4-python/
File "/usr/local/lib/python3.4/dist-packages/netCDF4/__init__.py", line 3, in <module>
from ._netCDF4 import *
File "netCDF4/_netCDF4.pyx", line 942, in init netCDF4._netCDF4 (netCDF4/_netCDF4.c:76006)
File "/usr/local/lib/python3.4/dist-packages/netcdftime/__init__.py", line 1, in <module>
from .netcdftime import utime, JulianDayFromDate, DateFromJulianDay
File "/usr/local/lib/python3.4/dist-packages/netcdftime/netcdftime.py", line 14, in <module>
from ._datetime import datetime
ImportError: /usr/local/lib/python3.4/dist-packages/netcdftime/_datetime.cpython-34m.so: undefined symbol: __intel_sse2_strchr
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I updated my LD_LIBRARY_PATH to include libirc.so and now it looks like this
/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/mpirt/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/mpirt/lib/intel64:/usr/local/lib:/usr/lib/x86_64-linux-gnu/libgfortran.so.3:/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64/libirc.so
It appears it is there. So where am I going wrong ?
and when I do a nm libirc.so | grep intel_sse2
0000000000017560 T __intel_sse2_stpcpy
0000000000017690 T __intel_sse2_stpncpy
0000000000016e80 T __intel_sse2_strcat
0000000000016af0 T __intel_sse2_strchr
00000000000167f0 T __intel_sse2_strcpy
00000000000158b0 T __intel_sse2_strcspn
0000000000017400 T __intel_sse2_strdup
0000000000016b30 T __intel_sse2_strend
0000000000016ac0 T __intel_sse2_strlen
0000000000017100 T __intel_sse2_strncat
0000000000016b50 T __intel_sse2_strncmp
0000000000016920 T __intel_sse2_strncpy
0000000000017810 T __intel_sse2_strnlen
0000000000015cf0 T __intel_sse2_strpbrk
0000000000016e30 T __intel_sse2_strrchr
0000000000015470 T __intel_sse2_strspn
0000000000016140 T __intel_sse2_strtok
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Are you setting paths in accordance with sourcing the compilervars.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Tim - the LD_LIBRARY_PATH does have the required ": separators yes.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The LD_LIBRARY_PATH should contain the directory where the library resides it looks like you have specified the library itself not the directory, i.e.:
/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/mpirt/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/mpirt/lib/intel64:/usr/local/lib:/usr/lib/x86_64-linux-gnu/libgfortran.so.3:/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64/libirc.so
^^^^^^^^ remove this
should be:
/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/mpirt/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64:/opt/intel/composer_xe_2013_sp1.3.174/mpirt/lib/intel64:/usr/local/lib:/usr/lib/x86_64-linux-gnu/libgfortran.so.3:/opt/intel/composer_xe_2013_sp1.3.174/compiler/lib/intel64
Judy

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page