2016-05-20 11 views
0

Ich brauche die Fortran-Funktion "vsCdfNormInv" in der Bibliothek 'mkl_vml.f90' (C: \ Programme (x86) \ Intel \ Composer XE 2015 \ mkl \ include) . Ich verwende Visual Studio 2013 Ultimate. Wie kann ich die Bibliotheken durch einen Befehl im Code enthalten? Ich habe das Problem gelöst, indem ich die zusätzlichen Abhängigkeiten dem Linker hinzugefügt habe: "mkl_intel_c.lib mkl_intel_thread.lib mkl_core.lib libiomp5md.lib", so dass der folgende Code funktioniert.Verwendung von MKL-Bibliotheken in Visual Studio

program Console1 
implicit none 
REAL , DIMENSION (1:15) :: ESTRAZIONIUNIFORMI,ESTRAZIONIGAUSSIANE 
CALL RANDOM_NUMBER (ESTRAZIONIUNIFORMI) 
CALL vsCdfNormInv(15,ESTRAZIONIUNIFORMI,ESTRAZIONIGAUSSIANE) 
end program Console1 

aber, den gleichen Befehl in einem Unterprogramm mit erhalte ich einen falschen Vektor „ESTRAZIONIGAUSSIANE“. Kann mir jemand helfen?

+0

Was bekommen Sie und was haben Sie erwartet? –

Antwort

0

Sie könnten Intel® Math Kernel Library Link Line Advisor verwenden, um Ihnen zu helfen, die korrekten Verbindungsoptionen zu erzeugen, die vom Compiler benötigt werden. Zumindest scheint das, was du verlinkt hast, nicht genug zu sein.

+0

Ich wäre sehr überrascht, wenn fehlende Bibliotheken zu falschen Ergebnissen führen würden, wenn er keine langen Ganzzahlen oder ähnliche seltsame Optionen verwendet. –

Verwandte Themen