Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Yuriy_K_
Beginner
442 Views

Undefined reference to intel functions

Hi,

When I'm trying to compile my code with optimization options(-On, -fast) i receive this messages:

some_source.cpp:(.text+0x196b): undefined reference to `__intel_sse2_strlen'
some_source.cpp:(.text+0x199d): undefined reference to `__intel_sse2_strcpy'
some_object.o: In function `SomeFunction(void*)':
some_source.cpp:(.text+0x1c9f): undefined reference to `__intel_sse2_strlen'
some_source.cpp:(.text+0x1cce): undefined reference to `__intel_sse2_strlen'
some_source.cpp:(.text+0x1d00): undefined reference to `__intel_sse2_strcpy'
some_source.cpp:(.text+0x1d31): undefined reference to `__intel_sse2_strcat'
some_object.o: In function `SomeFunctionTwo(std::string&)':
some_source.cpp:(.text+0x1ea5): undefined reference to `__intel_sse2_strlen'
some_source.o: In function `CPlatformUtils::IsDirectory(void*)':
some_source.cpp:(.text+0x2836): undefined reference to `__intel_sse2_strlen'
some_source.cpp:(.text+0x2866): undefined reference to `__intel_sse2_strlen'
some_source.cpp:(.text+0x289a): undefined reference to `__intel_sse2_strcpy'
some_source.cpp:(.text+0x28cd): undefined reference to `__intel_sse2_strcat'
some_source.o: In function `SomeFunctionThree(void*)':
some_source.cpp:(.text+0x292d): undefined reference to `__intel_sse2_strlen'
some_source.o: In function `SomeFunctionFour(void*&)':
some_source.cpp:(.text+0x2a04): undefined reference to `__intel_sse2_strncpy'
some_source.cpp:(.text+0x2a88): undefined reference to `__intel_sse2_strlen'
some_source.cpp:(.text+0x2ab6): undefined reference to `__intel_sse2_strlen'
some_source.cpp:(.text+0x2ae8): undefined reference to `__intel_sse2_strcpy'
some_source.cpp:(.text+0x2b19): undefined reference to `__intel_sse2_strcat'
some_source.o: In function `SomeFunctionFive(std::string const&)':
some_source.cpp:(.text+0x2d83): undefined reference to `__intel_sse2_strlen'
some_source.cpp:(.text+0x2db9): undefined reference to `__intel_sse2_strcpy'

Without optimization it works good. Can anyone explain me this?

 

0 Kudos
2 Replies
Bernard
Black Belt
442 Views

@Yuriy

Please read this article  https://software.intel.com/en-us/articles/unresolved-external-symbol-_intel_sse2_strlen

TimP
Black Belt
442 Views

There have been past compiler releases which mistakenly omitted the SSE2 support library which would be needed when you don't specify an architecture such as -msse3 when compiling some_source.  When everything is correctly configured (setting environment variables by sourceing compilervars....), and you don't mix incompatible versions of icpc, icpc with consistent architecture flags would search the necessary libraries when linking.  Of course, you will need the same LD_LIBRARY_PATH setting at run time as well.

Reply