Mac 개발자 웹 사이트에서 Xcode와 명령 줄 도구를 설치했습니다. 몇 번 읽은 것이 전제 조건입니다. MacPorts 프로그램도 설치했습니다. 터미널에서 :

sudo port install gcc48 sudo port select -set gcc mp-gcc48 

입력 할 때까지 위의 모든 작업이 순조롭게 진행되었습니다.

hash gcc

Enter를 누르면 다음과 같은 오류 메시지가 나타납니다.

-bash : hash : gcc : not found

I am at a lost and not 내 Mac (Mac OS X 10.9.1을 실행중인)에 gcc를 성공적으로 설치하는 방법을 알고 있습니다.

gcc 설치에 대한 제안 및 / 또는 대안에 많은 의무가 있습니다.

댓글

  • 구체적으로 gcc가 필요한 이유가 있습니까? clang은 동일한 구문을 사용하고 더 빠르게 컴파일되며 더 빠른 코드를 생성합니다. 지난 몇 년 동안 주요 버그가 해결되었습니다.
  • 수정하면 도움이 될 것입니다. 컴파일해야 할 패키지가 있으면 목록을 작성하십시오. 재미를 위해 gcc를 컴파일하는 방법을 알고 싶다면 '도 괜찮지 만 둘 중 하나에 대한 답은 다릅니다.
  • 무엇을 하는가? which gcc 줄까요?
  • ~ / .profile에서 경로 변수를 확인 했습니까? gcc가있는 디렉토리를 가리켜 야합니다.
  • ; s -l / opt / local / bin / gcc *는 무엇을 표시합니까?

답변

Macports보다 homebrew에서 gcc를 설치하는 것이 더 나을 수 있습니다.

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew doctor brew update brew search gcc 

이 패키지 관리자에서 사용할 수있는 gcc 버전은 약 6 개입니다.

를 참조하세요. 또한이 스레드에는 gcc 및 homebrew에 대한 자세한 내용이 있습니다. 다음을 통해 GCC를 설치하는 방법 Homebrew? 마지막으로 셸의 gcc 오류는 다음 스레드와 유사합니다. Xcode를 설치했지만 여전히 설치하지 않습니다. ' 터미널에 gcc가 없습니다.

댓글

  • 왜 이것이 macports보다 더 나은가요?

답변

두 가지 문제가있을 수 있습니다. 한 가지 문제는 경로입니다. / usr 앞에 / opt / local / bin이 있어야합니다. / bin 현재 / opt / local / bin이 / usr / bin 뒤에 있습니다.이 때문에 g ++는 여전히 clang에 연결되어있을 것입니다.

다른 문제는 포트 선택 명령을 잘못 사용하고 있다는 것입니다. 포트 select 명령은 자동으로 g ++ fl을 만듭니다. 지정된 컴파일러에 대한 ag 링크. 이 경우 지정된 컴파일러는 mp-4.8이어야하며 -set 대신 –set이어야합니다. 지침은이 웹 페이지 http://dropbit.com/?p=84 에 있습니다.

답변

포트 선택 명령이 예상 한대로 작동하지 않는 것 같습니다. 설명서에는 select 명령이 의 여러 버전 중에서 선택한다고 나와 있습니다. 버전이 지정된 포트 는 여기에서 귀하의 사례가 아닙니다 .

pejvan$ port help select Usage: select --list --set --show --summary <arguments> Select between multiple versions of a versioned port This allows you to choose which version, among several installed versions of a port, is to be considered primary. What this means is which version becomes the one most would consider the default, e.g. the one run without specifying any version. 

gcc (여기서는 버전 4.9)에 대한 설치 명령을 성공적으로 실행 한 후 :

sudo port install gcc49

“gcc 바이너리가 설치되었는지 확인할 수 있습니다.

pejvan$ ls -l /opt/local/bin/gcc* -rwxr-xr-x 2 root admin 42912 3 Jun 03:44 /opt/local/bin/gcc-ar-mp-4.9 -rwxr-xr-x 3 root admin 1082788 3 Jun 03:44 /opt/local/bin/gcc-mp-4.9 -rwxr-xr-x 2 root admin 42992 3 Jun 03:44 /opt/local/bin/gcc-nm-mp-4.9 -rwxr-xr-x 2 root admin 43000 3 Jun 03:44 /opt/local/bin/gcc-ranlib-mp-4.9 

그런 다음 전체 경로를 사용하여 gcc를 실행할 수 있습니다. 바이너리 :

pejvan$ gcc-mp-4.9 --version gcc-mp-4.9 (MacPorts gcc49 4.9-20140416_2) 4.9.0 20140416 (prerelease) Copyright (C) 2014 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

clang 컴파일러를 gcc로 (일시적으로 또는 영구적으로) 교체하려면 CC env var를 다음과 같이 설정하여 수행 할 수 있습니다. 예 :

export CC=/opt/local/bin/gcc-mp-4.9 # set GCC as default C compiler

부담으로 port select gccVersion가 작동하려면 gcc_select를 설치해야합니다.

pejvan$ port info gcc_select gcc_select @0.1_8 (sysutils) Description: gcc_select installs files that allow "port select" to switch the default version of gcc. It symlinks the standard compiler executables in the MacPorts prefix to the selected version. 

패키지의 세부 사항을 보지 않았기 때문에 clang과 포트가 설치된 gcc간에 작동하는지 아니면 여러 버전의 포트 설치된 gcc 패키지에서만 작동하는지 확실하지 않습니다.

댓글

  • gcc 패키지와 포트 선택간에 만 작동해야합니다.
  • ' 내가 첫 번째 문장에서 말한 것, 메이트.
  • (하지만 gcc_select 패키지를 설치해야합니다. 여기에는 해당되지 않는 것 같습니다).

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다