Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

error #31001: The dll for reading and writing the pdb (for example, mspdb110.dll) could not be found on your path

Guillaume_A_2
Beginner
1,858 Views

Hi everyone,

I recently upgraded my Intel Composer version (2016 -> 2017 update 1) and cannot compile my program anymore in 32bit mode. I get this error :

"error #31001: The dll for reading and writing the pdb (for example, mspdb110.dll) could  not be found on your path"

I found this similar topic but in my case it works fine in 64bit and crash in 32bit. The compilation crash in command line and in Visual Studio.

My config: Win7 (64bit), Visual Studio 2013, Platform Toolset: Intel C++ Compiler 17.0, Base Platform Toolset: V100.

Can someone help me please ?

Guix

0 Kudos
7 Replies
Yuan_C_Intel
Employee
1,858 Views

Hi, Guix

I think your Base Platform Toolset should be v120 for Visual Studio 2013. (v100 is for older Visual Studio 2010)

Please also make sure the mspdb120.dll can be found from "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\BIN\" installation path.

Hope this helps.

Thank you.

0 Kudos
Guillaume_A_2
Beginner
1,858 Views

Thx for your reply Yolanda.

Actually, it works fine when setting the Base Platform Toolset to v110 or v120. But I am stuck with v100 because of dependencies on old thirdparties and I cannot switch my program to a newer toolset.

I tried to add "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64" in the PATH (locations of mspdb100.dll). Now the compilation 32bit is OK but it crash at link time with :

"error MSB6006: "xilink.exe" exited with code -1073741701"

It still works fine in 64bit with v100 (or v110 or v120) Base Platform Toolset. What is wrong with the 32bit mode ?

Any other advice ?

Guix

 

0 Kudos
Yuan_C_Intel
Employee
1,858 Views

Hi, Guix

The path "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64" is for 64bits binary and dlls instead of 32bits.

Could you find the x86 mspdb100.dll from "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin"?

Thanks.

0 Kudos
Guillaume_A_2
Beginner
1,858 Views

Hi Yolanda,

I reinstalled (two times) VS 10 and then Composer 2017 Update 1. At "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin" there is two folders: "amd64" and "x86_amd64". I find mspdb100.dll in "amd64"  but not in  "x86_amd64". I also find mspdb100.dll at "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE", I do not know if it is a 32bit or 64bit dll. 

Please note that everything works fine if I switch back to Composer 2016.

I noticed that during the installation of Composer 2017 Update 1 there is no checkbox for Visual Studio 2010 at the "Choose Integration Target" step. Is Composer still compatible with VS 2010 ?

Thanks,

Guix

 

0 Kudos
TimP
Honored Contributor III
1,858 Views

The release notes should confirm if vs2010 support was dropped. Historically, Intel compilers have supported at most 3 vs versions.

0 Kudos
Guillaume_A_2
Beginner
1,858 Views

Oh no... you are right Tim. Page 7 of the release note : "Support removed for Visual Studio 2010"

Does the mspdb*.dll really needed for the compilation ? Is there a workaround ? 

It is ok with 64bit, I am pretty sure that there is a little trick for the 32bit mode.

Guix

0 Kudos
TimP
Honored Contributor III
1,858 Views

pdb comes into play only when you build with a debug option (e.g. -debug:inline-debug-info, or full debug build).  Even then, if there is a problem, it will only prevent debug symbols from appearing to implement debugging and profiling; it won't affect execution otherwise.

0 Kudos
Reply