gcc: lỗi khi cố thực thi 'cc1plus': execvp: Không có tệp hoặc thư mục như vậy


18

Tôi là người mới nhưng thích phiêu lưu. Tôi đang khởi động Windows, Fedora và Ubuntu 14.04 LTS (tất cả 64). Học nhưng không sử dụng dpkg, apt và apt-get. Bắt đầu nghiên cứu C ++ bằng Ubuntu (người duy nhất đã cài đặt gcc). Vì vậy, trong lần biên dịch đầu tiên của tôi, tôi đã chạy lệnh gcc xy.ccvà nhận được các thông tin sau:

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

Vì vậy, tôi đã tìm kiếm máy tính của mình cho cc1plus và execvp. Và không tìm thấy. Chỉ cần execvp.3.gz trong thư mục /user/share/man/man3và cc1 trong /user/lib/gcc/x86_64-linux-gnu/4.8.

Vì vậy, cả đống công việc và tìm hiểu về các trình thu thập và kiểm tra gói, nhưng không có can đảm để gỡ bỏ và cài đặt lại, v.v.

Bạn có một số gợi ý?

Câu trả lời:


24

Bạn có thể thiếu gói g ++ trên máy của bạn. Mở một thiết bị đầu cuối và cài đặt nó bằng lệnh dưới đây:

sudo apt-get install g++

Để biên dịch bằng g ++, hãy sử dụng

g++ -o test.o test.cpp

g ++ có thể được sử dụng để biên dịch nguồn C ++, cài đặt Ubuntu mặc định đi kèm với gcc, nhưng không phải với g ++.

Bạn đang cố gắng biên dịch nguồn C ++ bằng trình biên dịch C. gcc thường biên dịch thành công mã C ++ nhưng theo mặc định, nó không liên kết bất kỳ thư viện cụ thể nào của c ++ (tham khảo câu trả lời này trên Stack Overflow ).

Nếu một thông báo hiển thị như : Couldn't find package ..., thì hãy thử các lệnh sau

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

sau đó

sudo apt-get install g++

6

cc1plus là phụ trợ c ++ (trình biên dịch thực) cho gcc, nếu bạn chủ yếu đi lập trình trong c ++, bạn sẽ thực sự muốn cài đặt g ++ (sẽ có cc1plus với nó). Sử dụng một mặt trước hệ thống gói kết thúc apt-get, synaptic, trình quản lý phần mềm hoặc một số phần mềm khác, nó sẽ cài đặt các phụ thuộc với nó.

execvp là một chức năng lập trình, tập tin bạn tìm thấy phù hợp với nó là trang man (thủ công) cho nó. để xem nó mở một thiết bị đầu cuối và gõ man execvp. Các trang man thường trực tuyến nhiều lần và chúng có TON thông tin trong đó về cli và các công cụ lập trình.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.