g++에서 C++11으로 컴파일하기


발생하는 문제 및 실행환경

우분투 12.04에서 제 C++03 컴파일러를 C++11 컴파일러로 바꾸고 싶어요 찾아보니까 옵션을 -std=c++0x-std=gnu++0x로 주라고 하는데 제 컴퓨터에서는 에러가 났어요. 제가 옵션을 써보질 않아서 정확히 어떻게 쓰는지 모르겠습니다. 도와주세요

C++11의 라이브러리 array를 include한 소스코드

#include <array>
#include <iostream>

int main()
{
    std::array<int, 3> arr = {2, 3, 5};
    ...
}

에러내용

This file requires compiler and library support for the upcoming ISO C++ standard, C++0x. This support is currently experimental, and must be enabled with the -std=c++0x or -std=gnu++0x compiler options.

  • 2016년 01월 25일에 작성됨

조회수 1164


1 답변


좋아요
0
싫어요
채택취소하기

컴파일러를 지정하는 옵션(또는 플래그)은 일반 커맨드 라인 파라미터랑 똑같습니다. 별로 특별한 것 없이 사용하면 됩니다.

터미널에서 g++에 컴파일러를 지정하려면 $ g++ -std=c++11 your_file.cpp -o your_program 와 같이 써야 합니다.

만약 이게 안되면 g++에 c++11컴파일러가 없는 것이므로 커맨드 라인에 g++ --version을 쳐서 4.8버전이 있는지 확인하고, 없다면 g++-4.8패키지를 설치해주세요

  • 2016년 01월 25일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close