- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear support,
I have the following problem:
I complie FORTRAN code which is a part of libadusr.so for FE sowatware ADINA
under Linux x86 Debian (Adina support only ifort compiler under linux)
However when I run exe file I have the following error:
denis@perun10:/usr/adina85/adina8.5$ ./adina.exe
./adina.exe: symbol lookup error: /lib/libadusr.so: undefined symbol: __libm_sse 2_exp
I should say that before I had the same problems with ATAN function and ISNAN which I
commented for a moment.
In FAQ of Adina they suggest that it is due to missing libraries which should be added during compilation:
http://www.adina.com/faq/qg008.shtml
However I don't find any libraries which have missimng symbol:
denis@prometheus:/opt/intel/Compiler/11.0/081/lib$ grep "__libm_sse2_exp" *
nor here:
denis@prometheus:/opt/intel/Compiler/11.0/081/bin/ia32$ grep "__libm_sse2_exp" *
Binary file fortcom matches
Binary file svfortcom matches
I would appreciate very much any help to be able to compile this library.
With the best regards,
PhD student
Denis Davydov
I have the following problem:
I complie FORTRAN code which is a part of libadusr.so for FE sowatware ADINA
under Linux x86 Debian (Adina support only ifort compiler under linux)
However when I run exe file I have the following error:
denis@perun10:/usr/adina85/adina8.5$ ./adina.exe
./adina.exe: symbol lookup error: /lib/libadusr.so: undefined symbol: __libm_sse 2_exp
I should say that before I had the same problems with ATAN function and ISNAN which I
commented for a moment.
In FAQ of Adina they suggest that it is due to missing libraries which should be added during compilation:
http://www.adina.com/faq/qg008.shtml
However I don't find any libraries which have missimng symbol:
denis@prometheus:/opt/intel/Compiler/11.0/081/lib$ grep "__libm_sse2_exp" *
nor here:
denis@prometheus:/opt/intel/Compiler/11.0/081/bin/ia32$ grep "__libm_sse2_exp" *
Binary file fortcom matches
Binary file svfortcom matches
I would appreciate very much any help to be able to compile this library.
With the best regards,
PhD student
Denis Davydov
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You were very close. The library directory structure changed under 11.0. You needed to execute the grep under the ia32 specific library sub-directory, the full path to the x86 version is: /opt/intel/Compiler/11.0/081/lib/ia32
That would have showed you:
$ grep "__libm_sse2_exp" *
Binary file libimf.a matches
Binary file libimf.so matches
These ATAN (__libm_sse2_atan) and ISNAN (__libm_internal_isnan) references also come from libimf so you should be able to reactivate those after adding libimf.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you very much for you reply.
I added missing library and problems with atan, isnan and exp have gone.
However there were two more missing I added (for_stop_core symbol).
Now I have the following error:
denis@perun10:/usr/adina85/adina8.5$ ./adina.exe
./adina.exe: error while loading shared libraries: libifcoremt.so.5: cannot open shared object file: No such file or directory
whereas these files are exactly in the same directory:
denis@perun10:/usr/adina85/adina8.5$ ls
adina.exe
libadusr.so
libguide.so
libifcoremt.so.5
libifcore.so.5
...
Do you have any clue why it does not see them?
Thank you in advance.
Regards,
Denis
p/s/ here is my makefile, just for any case:
SHELL = /bin/sh
TARGET = libadusr.so
MAT2D_OBJ = ovl30u_vp1.o
MAT3D_OBJ = ovl40u_vp1.o
USER_OBJS =
OBJS =
ovl100u.o ovl110u.o ovl170u.o ovl20u.o
ovl30u.o ovl40u.o ovl50u.o ovl60u.o ovl160u.o ovlusr.o
$(MAT2D_OBJ) $(MAT3D_OBJ) $(USER_OBJS)
FC = /opt/intel/Compiler/11.0/081/bin/ia32/ifort
LD = ld
FFLAGS = -auto -common_args -Kpic -cm -w -O3 -assume byterecl -fp_port
INTEL_LIB=/opt/intel/Compiler/11.0/081/lib/ia32
$(TARGET): $(OBJS) force_rebuild
@ rm -f $@ 2 > /dev/null
$(LD) -o $@ -Bdynamic /lib/ld-linux.so.2
$(INTEL_LIB)/libimf.so $(INTEL_LIB)/libifcoremt.so.5 $(INTEL_LIB)/libifcore.so.5
-shared $(OBJS) -lm -lc
@ chmod 555 $@
force_rebuild:
I added missing library and problems with atan, isnan and exp have gone.
However there were two more missing I added (for_stop_core symbol).
Now I have the following error:
denis@perun10:/usr/adina85/adina8.5$ ./adina.exe
./adina.exe: error while loading shared libraries: libifcoremt.so.5: cannot open shared object file: No such file or directory
whereas these files are exactly in the same directory:
denis@perun10:/usr/adina85/adina8.5$ ls
adina.exe
libadusr.so
libguide.so
libifcoremt.so.5
libifcore.so.5
...
Do you have any clue why it does not see them?
Thank you in advance.
Regards,
Denis
p/s/ here is my makefile, just for any case:
SHELL = /bin/sh
TARGET = libadusr.so
MAT2D_OBJ = ovl30u_vp1.o
MAT3D_OBJ = ovl40u_vp1.o
USER_OBJS =
OBJS =
ovl100u.o ovl110u.o ovl170u.o ovl20u.o
ovl30u.o ovl40u.o ovl50u.o ovl60u.o ovl160u.o ovlusr.o
$(MAT2D_OBJ) $(MAT3D_OBJ) $(USER_OBJS)
FC = /opt/intel/Compiler/11.0/081/bin/ia32/ifort
LD = ld
FFLAGS = -auto -common_args -Kpic -cm -w -O3 -assume byterecl -fp_port
INTEL_LIB=/opt/intel/Compiler/11.0/081/lib/ia32
$(TARGET): $(OBJS) force_rebuild
@ rm -f $@ 2 > /dev/null
$(LD) -o $@ -Bdynamic /lib/ld-linux.so.2
$(INTEL_LIB)/libimf.so $(INTEL_LIB)/libifcoremt.so.5 $(INTEL_LIB)/libifcore.so.5
-shared $(OBJS) -lm -lc
@ chmod 555 $@
force_rebuild:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
That's a run-time issue related to the LD_LIBRARY_PATH setting.
Assuming those ifort libraries you show that exist in the adina directory are from the 11.0 Intelcompiler release, to use those, then use this command to set the environment variable accordingly:
export LD_LIBRARY_PATH=/usr/adina85/adina8.5:$LD_LIBRARY_PATH
If those ifort libraries in the adina directory are *not* from the 11.0 release, then you should set LD_LIBRARY_PATH to use the lib versions under the Intel ia32 library sub-directory. You can either set LD_LIBRARY_PATH manually or source the ifortvars.sh script under the bin sub-directory. (e.g. source /opt/intel/Compiler/11.0/081/bin/ifortvars.sh ia32)
Set manually with: export LD_LIBRARY_PATH=/opt/intel/Compiler/11.0/081/lib/ia32:$LD_LIBRARY_PATH
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you!
now everything works and I'm able to run .exe file with no compiling-issue errors.
Cheers,
Denis.
now everything works and I'm able to run .exe file with no compiling-issue errors.
Cheers,
Denis.

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