런타임 옵션

런타임 옵션 (Runtime Options)

GNU Fortran으로 컴파일한 프로그램의 실행 시 동작을 바꾸는 옵션들을 다뤄요. 특히 무형식(unformatted) 파일의 데이터 표현 방식과 기록 마커 길이, 그리고 부호 있는 0의 처리 방식을 제어할 수 있어요.

출처: Runtime Options (The GNU Fortran Compiler)

본문

이 옵션들은 GNU Fortran으로 컴파일된 프로그램의 런타임 동작에 영향을 줘요.

-fconvert=conversion

무형식 파일의 데이터 표현 방식을 지정해요. 대부분의 시스템에서 conversion에 쓸 수 있는 값은 다음과 같아요: 기본값인 native, 빅-엔디언과 리틀-엔디언을 바꾸는 swap, 무형식 파일에 빅-엔디언 표현을 쓰는 big-endian, 무형식 파일에 리틀-엔디언 표현을 쓰는 little-endian.

-mabi=ieeelongdouble를 지원하는 POWER 시스템에는 콤마로 다른 옵션들과 결합할 수 있는 추가 옵션이 있어요. 그것들은 다음과 같아요.

  • -fconvert=r16_ieeeREAL(KIND=16)에 IEEE 128비트 형식을 사용해요.
  • -fconvert=r16_ibmREAL(KIND=16)에 IBM long double 형식을 사용해요.

이 옵션은 주 프로그램(main program)에서 쓸 때만 효과가 있어요. CONVERT 지정자와 GFORTRAN_CONVERT_UNIT 환경 변수는 -fconvert로 지정한 기본값을 덮어써요.

-frecord-marker=length

무형식 파일의 기록 마커(record marker) 길이를 지정해요. length에 쓸 수 있는 값은 4와 8이고 기본값은 4예요. 이것은 이전 버전의 gfortran과 다릅니다: 대부분의 시스템에서 기록 마커 길이 기본값을 8로 지정했던 옛 버전과는 달라요. 이전 gfortran 버전과 호환되는 파일을 읽거나 쓰려면 -frecord-marker=8을 사용해요.

-fmax-subrecord-length=length

서브레코드의 최대 길이를 지정해요. length의 최대 허용값은 2147483639이고 이것이 또한 기본값이에요. 사실상 gfortran 테스트 스위트에서만 유용해요.

-fsign-zero

활성화하면, 부호 비트가 설정된 값 0의 부동소수점 수는 형식화된 출력에서 음수로 쓰이고 SIGN 내장 함수에서 음수로 취급돼요. -fno-sign-zero는 0 값(또는 I/O에서 0으로 반올림된 값)의 음수 부호를 출력하지 않고, Fortran 77과의 호환성을 위해 SIGN 내장 함수에서 0을 양수로 간주해요. 기본값은 -fsign-zero예요.

더 알아보기