Intel® C++ Compiler
Support and discussions for creating C++ code that runs on platforms based on Intel® processors.
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.

linking error

Tzach_Ashkenazi
Beginner
132 Views

i am trying to comile a VS2008 solution from the command line  using the intel compiler version : intelcompiler 2013 update 2 

i get the folowing error: error LNK2019: unresolved external symbol ___intel_sse2_strlen

when i compile the same code from the VS2008 IDE the linking is successful

this is the code i am using:

call "C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86
call "C:\Program Files\Intel\Composer XE 2013\bin\compilervars.bat" ia32 vs2008
call "C:\Program Files\Intel\IPP\5.3.2.073\ia32\tools\env\ippenv.bat"

cd d:\TFS\SWSS\dev\SWSS
d:
"C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv" /useenv SpeakerSeparation.sln /rebuild

any thoughts?

0 Kudos
3 Replies
Sukruth_H_Intel
Employee
132 Views

Hi ,

      This symbol is been defined in "libirc.lib" , So please check if the compiler is trying to link this lib and also if this lib is been linked from the New composer Update that you have installed. You can also refer to this article:- http://software.intel.com/en-us/articles/unresolved-external-symbol-_intel_sse2_strlen.

In order to find out which libs are being searched, You can use the LINKER option "/VERBOSE:Lib" with linker xilink.exe. If this library is not being LINKED or if its being linked to the older libirc.lib, then you may need to pass the path of the library to the linker using /link option of compiler.

Regards,

Sukruth H V

 

JenniferJ
Moderator
132 Views

did you follow the suggestion from Sukruth on finding why the old lib is linked?
From your script that you're using an old Intel IPP lib. can you use the Intel IPP coming with Intel C++ Composer XE?
if so, the script can be simplified like:
     "C:\Program Files (x86)\Intel\Composer XE 2013\bin\ipsxe-comp-vars.bat" ia32 vs2008

Tzach_Ashkenazi
Beginner
132 Views

i ended up directly refering the linker to this dll

The problem was i need to use IPP 5.3 and not ipp 7 with the intel compiler 

Reply