Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

Intel Fortran 2017 Beta and Fortran 2016 coexisiting

Chris_G_2
Beginner
308 Views

I recently took delivery of a new shiny laptop running Windows 10. I installed Visual Studio 2015 Community Edition and then the Intel Parallel Studio 2017 Beta. I am using the Fortran compiler and it all works very well.

I have a licence for the 2016 XE Composer package and I have now downloaded and installed this as well. I would like, for various operational reasons, to switch between the two Fortran compilers. When I open Visual Studio I get the message:

the 'Intelpackage' package did not load correctly.The problem may have been caused by a configuration change or by the installation of another extension ....

The Activity Log file contains:

<guid>{8E5A44DA-6B19-4803-8018-716C51016B52}</guid>
  </entry>
  <entry>
    <record>378</record>
    <time>2016/04/17 09:09:02.015</time>
    <type>Error</type>
    <source>VisualStudio</source>
    <description>CreateInstance failed for package [IntelPackage][Could not load file or assembly &apos;IntelPkg, Version=16.0.0.0, Culture=neutral, PublicKeyToken=edf82db605c24ff6&apos; or one of its dependencies. The located assembly&apos;s manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]:{   at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark&amp; stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)&#x000D;&#x000A;   at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark&amp; stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)&#x000D;&#x000A;   at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark&amp; stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)&#x000D;&#x000A;   at System.Activator.CreateInstance(String assemblyString, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo, StackCrawlMark&amp; stackMark)&#x000D;&#x000A;   at System.Activator.CreateInstance(String assemblyName, String typeName)&#x000D;&#x000A;   at System.AppDomain.CreateInstance(String assemblyName, String typeName)}</description>
    <guid>{8E5A44DA-6B19-4803-8018-716C51016B52}</guid>
    <hr>80131040</hr>
    <errorinfo>Could not load file or assembly 'IntelPkg, Version=16.0.0.0, Culture=neutral, PublicKeyToken=edf82db605c24ff6' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)</errorinfo>
  </entry>
</activity>


I presume I can run both compilers on one computer and I would be grateful for some advice.

ChrisG

 

0 Kudos
4 Replies
Steven_L_Intel1
Employee
308 Views

I have both compilers on two of my systems. It could be that installing the older one second caused problems, though it's not supposed to. I suggest uninstalling both, delete the "Intel Fortran" directory from the Visual Studio 14.0 directory, install 2016 and then 2017. You can then choose which compiler to use in Tools > Options > Intel Compilers and Tools > Visual Fortran > Compilers.

0 Kudos
Chris_G_2
Beginner
308 Views

That worked.

Many thanks.

ChrisG

 

0 Kudos
IanH
Honored Contributor II
308 Views

I have found that having the beta integration installed prevents me from building with the 2016 compiler in Visual Studio 2015 community update one due to link errors involving libucrtd.lib or its cousins.  I have reported this through premier support, but the nature of this issue makes me wonder if am I the only one with the problem.  If not - is there a simple workaround?  I am yet to experiment much with this, but I see this library might be part of the windows 10 sdk, not that I'm doing anything specific to windows 10.

0 Kudos
Steven_L_Intel1
Employee
308 Views

The process through which Visual Studio locates these libraries (part of the Windows SDK - it doesn't matter if you're running the Windows version the SDK targets) can be a bit flaky.  Also, updates can change the folder path to these libraries. The simple workaround is to explicitly add the folder to the Libraries list in Tools > Options > Intel Compilers and Tools > Visual Fortran > Compilers. On my system it is C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64 , though that 10240 can change with a Windows update.

0 Kudos
Reply