Windows 에서 Fortran DLL 생성하기
공유라이브러리는 유연성있는 프로그래밍환경을 조성하는데 있어서 자주 이용되는 형태의 프로그램입니다. 리눅스에서는 "a.so" 맥에서는 "a.dylib" 로 불리고 윈도우에서는 "a.dll" 형태의 확장자를 갖습니다. 오늘은 포트란으로 DLL 을 생성하는 방법에 대해서 알아봅시다.
1. DLL 코드 작성
파일이름 : f90arr.f90
SUBROUTINE ARRAYTEST(arr)
!DEC$ ATTRIBUTES DLLEXPORT :: ARRAYTEST
REAL arr(3, 7)
INTEGER i, j
DO i = 1, 3
DO j = 1, 7
arr (i, j) = 11.0 * i + j
END DO
END DO
END SUBROUTINE
2. DLL IMPORT 하는 프로그램 코드 작성
파일이름 : mainapp.f90
PROGRAM TESTA
!DEC$ ATTRIBUTES DLLIMPORT:: ARRAYTEST
REAL rarray (3,7)
CALL ARRAYTEST(rarray)
END PROGRAM TESTA
3. DLL 컴파일하기
> ifort /dll f90arr.f90
이 명령어를 실행하면 다음과 같은 파일들이 생성됩니다.
"f90arr.o" "f90arr.lib" "f90arr.dll" "f90arr.exp"
>ifort mainapp.f90 f90arr.lib
"mainapp.exe" 실행파일이 생성됩니다.
출처 - https://software.intel.com/en-us/node/535304
1. DLL 코드 작성
파일이름 : f90arr.f90
SUBROUTINE ARRAYTEST(arr)
!DEC$ ATTRIBUTES DLLEXPORT :: ARRAYTEST
REAL arr(3, 7)
INTEGER i, j
DO i = 1, 3
DO j = 1, 7
arr (i, j) = 11.0 * i + j
END DO
END DO
END SUBROUTINE
2. DLL IMPORT 하는 프로그램 코드 작성
파일이름 : mainapp.f90
PROGRAM TESTA
!DEC$ ATTRIBUTES DLLIMPORT:: ARRAYTEST
REAL rarray (3,7)
CALL ARRAYTEST(rarray)
END PROGRAM TESTA
3. DLL 컴파일하기
> ifort /dll f90arr.f90
이 명령어를 실행하면 다음과 같은 파일들이 생성됩니다.
"f90arr.o" "f90arr.lib" "f90arr.dll" "f90arr.exp"
>ifort mainapp.f90 f90arr.lib
"mainapp.exe" 실행파일이 생성됩니다.
출처 - https://software.intel.com/en-us/node/535304
댓글
댓글 쓰기