Quantcast
Channel: Intel® Fortran Compiler for Linux* and macOS*
Viewing all articles
Browse latest Browse all 2583

symbol lookup error: undefined symbol: _intel_fast_memmove

$
0
0

Hello,

I'm attempting to merge a fortran and a C++ code, a process that has been fraught with errors. The most recent one however has me stumped and I can't figure out what's wrong/how to fix it. I'm including everything I've seen requested for similar errors i've found. let me know if there's any other information that is useful for figuring out what this is.

Makefile:

LDLIBS = -I/share/apps/intel/composer_xe_2011_sp1.10.319/mkl/include \
         -L/share/apps/intel/composer_xe_2011_sp1.10.319/mkl/lib/intel64 \
         -I/share/apps/intel/composer_xe_2011_sp1.10.319/mkl/interfaces/lapack95/source \
         -mkl -openmp -reentrancy hraded

INCLUDE = -I/physics/username/mstl/include \
          -I/physics/username/mstl/include/physics \
          -I/physics/username/mstl/include/math2 \
          -I/physics/username/mstl/include/math2/algebra \
          -I/physics/username/mstl/include/math2/analysis \
          -I/physics/username/mstl/include/math2/data \
          -I/physics/username/mstl/include/math2/geometry \
          -I/physics/username/mstl/include/math2/group \
          -I/physics/username/mstl/include/math2/spline \
          -I/physics/username/mstl/include/math2/probabilityandstatistics

LIBRARY = -L/physics/username/mstl/lib

FC = ifort -c #f compiler
CC = icc -c $c compiler
LK = ifort -v -o ../abXX #linker

CF = -mcmodel=large -i-dynamic -no-ipo -r8 -xW -traceback -fpe0 #f compile flags
OF = $(CF) -O2 #f optimization flags
DF = $(CF) -g -debug -fpstkchk -C -warn interfaces #f debug flags

OPTIONS = -O -loops -lstdc++ -lmstl.icc #c compile flags
LKOPS = -icc -lstdc++ -lmstl.icc -cxxlib -lintlc #c lib linking options

COMP = $(FC) $(OF) # fortran compiler
CMP = $(CC) $(LIBRARY) $(INCLUDE) $(OPTIONS) #c compiler
LINK = $(LK) $(OF)

MODULES = list of all fortran .o files here

COBJS = list of all c++ .o files here

.cpp.o:
         $(CMP) $<

.f.o:
         $(COMP) $<

../abXX: $(MODULES) $(COBJS)
             $(LINK) $(MODULES) $(COBJS) $(LDLIBS) $(LIBRARY) $(INCLUDE) $(LKOPS)

clean:
         rm -v -f *.o *.mod ../abXX

 

 

.mybashrc startup file:

echo "I exist in mybashrc"

export PATH=$PATH:/opt/intel/composer_xe_2011_sp1/bin
export PATH=$PATH:/opt/INTEL/bin

source /opt/INTEL/bin/compilervars.sh intel64
export LD_LIBRARY_PATH = $LD_LIBRARY_PATH:/opt/intel/composerxe/mkl/lib/intel64/
export LD_LIBRARY_PATH = /opt/intel/composer_xe_2011_sp1.10.319/compiler/lib/intel64/:$LD_LIB_PATH

export INTEL_LICENSE_FILE = /opt/INTEL/licenses/client.lic

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/mkl/lib/intel64

 

 

Results of  ldd ../abXX:

linux-vdso.so.1 =>  (0x00007fffb51b8000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003171800000)
libintlc.so.5 => /opt/intel/composer_xe_2011_sp1.10.319/compiler/lib/intel64/libintlc.so.5 (0x00007fc93b678000)
libmkl_intel_lp64.so => /opt/INTEL/compilers_and_libraries_2016.3.210/linux/mkl/lib/intel64/libmkl_intel_lp64.so (0x00007fc93ab68000)
libmkl_intel_thread.so => /opt/INTEL/compilers_and_libraries_2016.3.210/linux/mkl/lib/intel64/libmkl_intel_thread.so (0x00007fc939238000)
libmkl_core.so => /opt/INTEL/compilers_and_libraries_2016.3.210/linux/mkl/lib/intel64/libmkl_core.so (0x00007fc937820000)
libiomp5.so => /opt/intel/composer_xe_2011_sp1.10.319/compiler/lib/intel64/libiomp5.so (0x00007fc937528000)
libifport.so.5 => /opt/intel/composer_xe_2011_sp1.10.319/compiler/lib/intel64/libifport.so.5 (0x00007fc9373f0000)
libifcoremt.so.5 => /opt/intel/composer_xe_2011_sp1.10.319/compiler/lib/intel64/libifcoremt.so.5 (0x00007fc937178000)
libimf.so => /opt/intel/composer_xe_2011_sp1.10.319/compiler/lib/intel64/libimf.so (0x00007fc936da8000)
libsvml.so => /opt/intel/composer_xe_2011_sp1.10.319/compiler/lib/intel64/libsvml.so (0x00007fc936628000)
libm.so.6 => /lib64/libm.so.6 (0x000000316b000000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003171400000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x000000316b400000)
libdl.so.2 => /lib64/libdl.so.2 (0x000000316b800000)
libc.so.6 => /lib64/libc.so.6 (0x000000316ac00000)
/lib64/ld-linux-x86-64.so.2 (0x000000316a800000)

 

I'm running with ifort version: 12.1.4 20120410 and icc version: 16.0.3 20160415

When I execute the above makefile, the code compiles and I get my executable, however when I attempt to run the program I get the following error:

./../abXX: symbol lookup error: ./../abXX: undefined symbol: _intel_fast_memmove

The fortran code without the c++ code added in will compile and run just fine. I also used the nm command to look at all undefined symbols and the both the code with and without the c is crawling with _intel_fast_memset and _intel_fast_memcpy as undefined symbols. Only the c code has an instance of _intel_fast_memmove missing.

Any help in resolving this would be greatly appreciated,

CS

Thread Topic: 

Help Me

Viewing all articles
Browse latest Browse all 2583

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>