Mac에 Fortran 컴파일러를 어떻게 설치해야합니까? (OS X 10.x, x> = 4)


25

관련 질문 : Scientific Computing 및 HPC의 Mac OS 상태

컴퓨터 과학에서 상당수의 소프트웨어 패키지가 Fortran으로 작성되었으며 Fortran은 사라지지 않았습니다. 다른 소프트웨어 패키지 (예 : SciPy ) 를 빌드하려면 포트란 컴파일러가 필요합니다 .

그러나 Mac OS X에는 Fortran 컴파일러가 포함되어 있지 않습니다. 컴퓨터에 포트란 컴파일러를 어떻게 설치해야합니까?


1
그것은 단지 포트란이 아닙니다. 맥은 단순히 모든 것이 작동하는 데비안과 같은 고품질 지원 리포지토리를 가지고 있지 않습니다. Mac에 복잡한 것을 설치하는 것은 고통입니다.
stali

답변:


32

독을 선택하십시오. Homebrew를 사용하는 것이 좋습니다. "핑크"및 "기타 방법"을 제외한 모든 방법을 시도했습니다. 원래이 답변을 작성할 때 MacPorts를 선호했습니다. 그 후 2 년 동안 Homebrew는 프로젝트로 많이 성장했으며 많은 PATH해킹이 필요할 수있는 MacPorts보다 유지 관리가 용이 ​​한 것으로 판명되었습니다 .

시스템 컴파일러와 일치하는 버전 설치

gfortran 버전이 컴퓨터에 설치된 gcc, g ++ 등의 버전과 일치하게하려면 여기 에서 적절한 버전의 gfortran을 다운로드 하십시오 . R 개발자SciPy 개발자는 이 방법을 권장합니다.

  • 장점 : XCode 또는 Kenneth Reitz의 설치 프로그램과 함께 설치된 컴파일러 버전과 일치합니다 . OS 업그레이드를 방해하지 않을 것입니다. MacPorts (그리고 아마도 Fink and Homebrew)와 설치되어 있기 때문에 MacPorts와 공존합니다 /usr/bin. 기존 컴파일러를 방해하지 않습니다. 편집 할 필요가 없습니다 PATH.
  • 단점 : 컴파일러 스택은 실제로 오래된 것입니다. (GCC 4.2.1은 최신 Apple 컴파일러이며 2007 년에 릴리스되었습니다.)에 설치합니다 /usr/bin.

HPC Mac OS X에서 사전 컴파일 된 최신 바이너리 설치

HPC Mac OS X 에는 g77 바이너리 및 f2c 기반 컴파일러뿐만 아니라 최신 GCC 릴리즈 (이 문서 작성 당시 4.8.0 (실험))에 대한 바이너리가 있습니다. PETSc 개발자는 FAQ 에서이 방법을 권장합니다 .

  • 장점 : 올바른 명령으로 다음 위치에 설치하십시오 /usr/local. 최신 정보. 기존 시스템 컴파일러 또는 위의 접근 방식을 방해하지 않습니다. OS 업그레이드를 방해하지 않습니다.
  • 단점 : 편집해야합니다 PATH. 버전을 쉽게 전환 할 수있는 방법은 없습니다. (PATH를 수정하거나, 컴파일러 설치를 삭제하거나, 주변을 둘러 볼 수 있습니다.) /usr/local컴파일러 바이너리는 단순히 'gcc', 'g ++'등으로 이름이 지정 되어 있기 때문에 다른 버전의 컴파일러 설치 방식을 방해합니다. 모든 심볼릭 링크).

MacPorts 사용

MacPorts 에는 사용할 수있는 여러 버전의 컴파일러가 있습니다.

  • 장점 : 설치 /opt/local; port select컴파일러 버전 (시스템 컴파일러 포함)간에 전환하는 데 사용할 수 있습니다. OS 업그레이드를 방해하지 않습니다.
  • 단점 : 포트를 설치하려면 전체 "소프트웨어 에코 시스템"이 필요합니다. 컴파일러에는 디버깅 기호가 포함되어 있지 않으므로 디버거를 사용하거나 PETSc를 설치할 때 문제가 발생할 수 있습니다. ( 숀 팔리 몇 가지 해결 방법을 제안한다.) 또한 변화가 필요합니다 PATH. Homebrew 및 Fink 설치를 방해 할 수 있습니다. ( 이 슈퍼 유저 게시물 참조 )

사제 사용

Homebrew 를 사용하여 Fortran 컴파일러를 설치할 수도 있습니다.

  • 장점 : 사용하기 쉬운 패키지 관리자; "시스템 컴파일러와 일치하는 버전 설치"에서와 동일한 Fortran 컴파일러를 설치합니다. MacPort와 달리 필요한 것만 설치하십시오. 대체 저장소 homebrew-dupes를 사용하여 최신 GCC (4.7.0) 스택을 설치할 수 있습니다.
  • 단점 : "시스템 컴파일러와 일치하는 버전 설치"의 모든 단점을 상속합니다. 다른 소프트웨어를 설치할 때 Homebrew 패러다임을 따라야 /usr/local할 수도 있습니다. MacPorts 및 Fink 설치를 방해 할 수 있습니다. ( SuperUser의이 게시물을 참조하십시오 .) 변경해야합니다 PATH. 설치는 시스템 라이브러리에 따라 달라질 수 있습니다. 즉, Homebrew 패키지의 종속성으로 인해 OS 업그레이드가 중단 될 수 있습니다. ( 이 기사 참조 ) gfortran을 설치할 때 시스템 라이브러리 종속성이있을 것으로 기대하지는 않지만 다른 Homebrew 패키지를 설치할 때 이러한 종속성이있을 수 있습니다.

핑크 사용

이론적으로 Fink 를 사용하여 gfortran을 설치할 수 있습니다 . 나는 그것을 사용하지 않았으며, (그리고 긍정적 인 말을 할 의사가있는) 사람을 모른다.

다른 방법

다른 바이너리 및 링크는 GFortran 위키 에 나열되어 있습니다 . 일부 링크는 이미 위에 나열되어 있습니다. 나머지 설치 방법은 위에서 설명한 방법과 충돌하거나 충돌하지 않을 수 있습니다. 자신의 책임하에 사용하십시오.


Fink가 MacPorts보다 선호되는 패키지 관리자였던 시간이있었습니다. 스택이 오래되어 유지 관리되지 않았으며 정기적으로 사용하는 많은 라이브러리가 포함되어 있지 않기 때문에 몇 년 전에 사용을 중단했습니다. 여기에서 모든 방법을 사용하면 패키지 관리자가 관리하는 것과 수동으로 롤링하는 것이 있습니다. Homebrew는 이러한 시스템을 사용하는 것이 좋지만 MacPort와 경쟁하려면 훨씬 더 많은 라이브러리가 필요합니다.
aterrel

1
또한 Sage (sagemath.org) 또는 Qsnake ( qsnake.com ) 와 같은 프로젝트를 사용 하여 자체 포트란 컴파일러를 제공하고 "gfortran"을 호출 할 수있는 "환경"에서 작업 할 수 있습니다.
Ondřej Čertík 2016 년

나는 10.5 상자에 핑크의 gfortran을 가지고 있지만 실제로 심각한 테스트를 한 적이 없습니다. 그것은 것입니다 cernlib 및 geant3를 컴파일하지만, 나도 요즘에 따라 어떤 큰 작업을 실행하지 않았습니다.
dmckee 2016 년

Homebrew의 경우 gfortran은 다음과 brew install gcc같이 설치됩니다 .$ brew install gfortran gives the message: Error: No available formula for gfortran GNU Fortran is now provided as part of GCC, and can be installed with: brew install gcc
Dave Everitt

Sean Farley의 Wiki 페이지에 대한 링크가 더 이상 작동하지 않습니다 (디버거가 MacPorts 설치와 작동하도록하는 방법 참조). 다시 연결할 수 있습니까?
TSGM

1

EasyBuild ( http://hpcugent.github.com/easybuild )를 사용하면 고유 한 GCC 컴파일러 세트를 쉽게 빌드하고 설치할 수 있습니다.

기본적으로 빌드하려는 것을 지정하는 간단한 easyconfig (.eb) 파일을 제공합니다 (GCC + 버전 + 컴파일러가 원하는 언어 세트 + ...). 그리고 빌드 및 설치는 단일 명령입니다. Homebrew와 비슷하지만 더 많은 자유를줍니다.

또한 EasyBuild는 단일 명령으로 빌드 및 설치할 수있는 다른 많은 과학적 소프트웨어 패키지를 지원하므로 살펴볼 가치가 있습니다.

면책 조항 : 저는 EasyBuild 팀의 일원입니다. gfortran이 포함 된 GCC 빌드는 OS X에서 작동하지만 다른 빌드는 번거로울 수 있습니다. 문제가 해결되면 알려주세요.


OS X에서 테스트를 수행 했습니까? '작동해야한다'고 말하면 경험이나 기대에 의한 것입니까?
Deer Hunter

@DeerHunter : 경험상 개인용 랩톱은 Mac이며 OS X를 실행합니다. GCC 빌드는 작동하지만 EasyBuild는 다른 빌드에 문제가있는 것으로 알려져 있습니다. 우리는 곧 그것을 조사하기를 희망합니다.
Kenneth Hoste

피하는 중 ... EASY_BUILD를 사용하여 파이썬 상품을 RPM으로 패키지했습니다.
Deer Hunter

@DeerHunter EasyBuild는 현재 물건을 RPM으로 패키징하는 것을 지원하지 않습니다. setuptools / disitutils가 제공하는 Python 설치 도구 인 'easy_install'과 EasyBuild ( 'eb'명령을 제공함)를 혼동하고 있습니까?
Kenneth Hoste

당신이 맞아요. 임의의 메모리 오류. 어쨌든 EasyBuild를 확인하십시오. 포장은 fpm...
Deer Hunter

0

MacOS에서 Intel Fortran Composer를 제안합니다. 좋은 최신 상태이며 작동합니다. 한 가지 부정적인 점은 무료가 아닙니다. 그래도 30 일 무료 평가판이 있다고 생각합니다.

Linux에서는 무료 비 상업 버전을 제공합니다.


Linux 사용자는 Solaris Studio를 설치할 수도 있습니다. 매우 잘 통합되어 있습니다 (C / C ++ / Fortran 컴파일러). Dbxtool은 매우 유용하며 분석기도 마찬가지입니다 (예 : openmp 프로그램에서 경쟁 조건 감지).
stali
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.