gcc : 'cc1plus'를 실행하는 동안 오류가 발생했습니다 : execvp : 해당 파일이나 디렉토리가 없습니다.


19

나는 초보자이지만 모험가입니다. Windows, Fedora 및 Ubuntu 14.04 LTS (64 개 모두)를 트라이 부팅하고 있습니다. dpkg, apt 및 apt-get을 사용하지 않고 학습합니다. 우분투 (gcc가 설치된 유일한 것)를 사용하여 C ++ 공부를 시작했습니다. 그래서 첫 번째 컴파일 시도에서 명령을 실행 gcc xy.cc하고 다음을 얻었습니다.

gcc: error trying to exec 'cc1plus' : execvp: No such file or directory

그래서 컴퓨터에서 cc1plus와 execvp를 검색했습니다. 그리고 둘 다 찾지 못했습니다. 디렉토리에 execvp.3.gz /user/share/man/man3,에 cc1 만 /user/lib/gcc/x86_64-linux-gnu/4.8있습니다.

따라서 패키지 게터와 체커에 대한 많은 작업과 학습이 있지만 제거하고 다시 설치할 용기는 없습니다.

당신은 몇 가지 제안이 있습니까?

답변:


24

컴퓨터에 g ++ 패키지가 없을 수 있습니다. 터미널을 열고 아래 명령을 사용하여 설치하십시오.

sudo apt-get install g++

g ++를 사용하여 컴파일하려면 이것을 사용하십시오.

g++ -o test.o test.cpp

g ++는 C ++ 소스를 컴파일하는 데 사용할 수 있으며 기본 우분투 설치에는 gcc가 포함되어 있지만 g ++에는 포함되어 있지 않습니다.

C 컴파일러를 사용하여 C ++ 소스를 컴파일하려고합니다. gcc는 일반적으로 C ++ 코드를 성공적으로 컴파일하지만 기본적으로 c ++ 특정 라이브러리를 연결하지 않습니다 ( 스택 오버 플로우에 대한 답변 참조 ).

메시지가 Couldn't find package ...다음 과 같이 표시 되면 다음 명령을 시도하십시오.

sudo apt-get update && sudo apt-get upgrade

그때

sudo apt-get install g++

6

cc1plus는 gcc를위한 c ++ 백엔드 (실제 컴파일러)입니다. 만약 주로 c ++로 프로그램을하려고한다면 실제로 g ++를 설치하고 싶을 것입니다 (cc1plus와 함께). 하나의 패키지 시스템 프론트 엔드 apt-get, 시냅틱, 소프트웨어 관리자 또는 그 밖의 여러 패키지 시스템을 사용하여 종속성을 설치합니다.

execvp는 프로그래밍 기능이며, 일치하는 파일은 해당 매뉴얼 (수동) 페이지입니다. 터미널을 열고을 입력하십시오 man execvp. 매뉴얼 페이지는 종종 온라인으로 제공되며 CLI 및 프로그래밍 관련 정보가 많이 있습니다.

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