Fortran: Lahey LF90
Jump to navigation
Jump to search
Fortran Compiler Lahey LF90
DLL erstellen
Automake-Datei:
1 2 3 4 5 6 7 | QUITONERROR DEBUG FILES=*.for COMPILE=@lf90 -ap -chk -g -co -f90 -lst -pca -sav -stchk -trace -w -wo -xref -c %fi -DLL -WIN -ML WINAPI LINK=@lf90 @%rf -dll -out %ex -ml winapi -fullwarn -g TARGET=Target.dll |
- TIP
- Es können mit LF90 keine Proceduren eines Moduls exportiert werden ! Deshalb eigene Subroutine/Funktion mit Modulproceduraufruf implementieren.
Gültige Schnittstellendefinitionen mit LF90
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | subroutine TEST_MODULE ( ) USE MOD_BLABLA DLL_EXPORT TEST_MODULE call BLABLA_Procedure ( ) end subroutine subroutine TEST_dlL ( ) DLL_EXPORT TEST_dll end subroutine function TEST_FUNCT ( ) LOGICAL ; :: TEST_FUNCT DLL_EXPORT TEST_FUNCT end function LOGICAL function TEST_FUNCT 2 ( ) DLL_EXPORT TEST_FUNCT 2 TEST_FUNCT 2 = .true. end function LOGICAL function TEST_UEBERGABE_Z ( Zahl ) USE MOD_SCHNITTSTELLE DLL_EXPORT TEST_UEBERGABE_Z INTEGER Zahl TEST_UEBERGABE_Z = .true. end function LOGICAL function TEST_UEBERGABE_C ( str ) USE MOD_SCHNITTSTELLE DLL_EXPORT TEST_UEBERGABE_C CHARACTER(1024) str TEST_UEBERGABE_C = .true. end function LOGICAL function TEST_UEBERGABE_C 2 ( str ) USE MOD_SCHNITTSTELLE DLL_EXPORT TEST_UEBERGABE_C 2 CHARACTER(*) str TEST_UEBERGABE_C 2 = .true. end function |
- TIP
- Aufpassen manchmal sind die exportierten Methdoden "case sensitive" !!!