GCC는 파일이 파일 확장명에 따라 인 언어를 확인할 수 있습니다.
#include <iostream>
int main()
{
std::cout << "Hello world\n";
}
그러나, GCC는 자동으로 대신 g++
의 gcc
를 사용하여 C++ 프로그램을 컴파일 할 수 있지만 -lstdc++
지시문을 추가해야합니다 의미 실제로 C. 이외의 언어에 대한 런타임 지원에 연결하지 않습니다 g++ hello.cc
gcc hello.cc -lstdc++
더 정확하게, 당신은 당신이 표준 라이브러리, 예외 운영자 new
, 또는 RTTI를 사용하는 경우 -lstdc++
를 지정해야합니다. 예를 들어, -lstdc++
없이 다음 컴파일 시도 :
int main()
{
try {
throw 1;
}
catch (int i)
{
return i;
}
}
기본적으로 운영자 new
을 사용 (std::string
들 포함)이 STL 컨테이너를 유의하시기 바랍니다. 엄밀히 말하면 -lstdc++
이 없으면 표준 라이브러리에서 알고리즘 (std::min
, std::find_first_of
등) 바인더와 몇 가지 다른 것들을 사용할 수 있어야합니다. 그러나 대부분은 그것을 포함 할 수도 있습니다 (링커는 실제로 링크하지 않음).
링커 명령에 -lstdC++를 포함해야합니다. – simon