명령 줄을 통해 OS X에서 간단한 Hello World 프로그램 컴파일


101

OS X에서 컴파일하려는 간단한 hello world 예제가 있습니다 hw.cpp.

#include <iostream>
#include <string>
using namespace std;
int main() {
  cout << "Hello world!" << endl;
  return 0;
}

을 사용하여 컴파일하고 싶지만 gcc성공하지 못했습니다. Xcode를 사용하는 것과 같은 다른 옵션도 듣고 싶습니다.


7
"성공하지 않음"은 누구도 문제를 진단하는 데 도움이되지 않습니다.
Gareth Davidson

답변:


187

시험

g++ hw.cpp
./a.out

g++GCC에 대한 C ++ 컴파일러 프런트 엔드입니다.
gccGCC에 대한 C 컴파일러 프런트 엔드입니다.

예, Xcode는 확실히 옵션입니다. GCC 위에 구축 된 GUI IDE입니다.

약간 더 자세한 접근 방식을 선호하지만 :

#include <iostream>

int main()
{
    std::cout << "Hello world!" << std::endl;
}

17
@math : return 0는 main에서 암시 적입니다.
fredoverflow 2010

3
@mathepic : 및 +1. C ++에서는 필요하지 않습니다. 경우 main수익을 타격하지 않고 도달 함수의 끝은 내재적으로 0을 반환
마틴 뉴욕

2
아, 알았어. 명확성을 위해 여전히 사용합니다.
대안

4
@mathepic : 1 개의 의견입니다. 개인적으로 사용하지 않는 것이 더 분명합니다.
Martin York

1
a.out? 창문에서 나는 a.exe. * nix에서는 확장이 필요하지 않습니다. 확장자없이 .out을 사용하는 이유는 무엇입니까? a역시 이상한 기본 이름입니다.
P.Brian.Mackey




2

새 버전은 다음과 같이 읽어야합니다.

xcrun g++ hw.cpp
./a.out

이것은 나에게 제공합니다ld: can't link with a main executable file './a.out' for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
Eddified

@ Rat-a-tat-a-tat 기억이 나지 않아서 죄송합니다. 3 년 전이었습니다.
Eddified

1

표시되는 오류가 무엇인지 지정하지 않았습니다.

gcc오류를 발생 시키는 문제입니까 , 아니면 전혀 실행할 수없는 문제 gcc입니까?

후자의 경우 개발 도구를 설치할 때 "UNIX 개발 지원"을 확인하지 않았으므로 명령 줄 실행 파일이 경로에 설치되지 않았을 가능성이 가장 높습니다. 개발 도구를 다시 설치하고 "사용자 지정"을 클릭하고 해당 상자를 선택하십시오.


1

또한 CLion (JetBrains)과 같은 IDE 또는 Atom과 같은 텍스트 편집기를 gpp-compiler 플러그인과 함께 사용할 수 있으며, 매력처럼 작동합니다 (컴파일 및 실행하려면 F5).


1

여러 .cpp 파일에 다음을 사용하십시오.

g++ *.cpp
./a.out
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.