Điểm:0

Cmake không thể tìm thấy trình biên dịch gcc

lá cờ nl

Tôi có Ubuntu 18.04.6 LTS và tôi đang cố cài đặt và chạy gcc v8 (phiên bản v7 là mặc định).

Tôi đã làm: Sudo apt-get cài đặt bản dựng cần thiết

sudo apt-get cài đặt gcc-8

Để cố gắng lấy v8 làm mặc định, tôi đã làm: sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8

Nếu tôi chạy gcc -v tôi nhận được:

Sử dụng thông số kỹ thuật tích hợp. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper OFFLOAD_TARGET_NAMES=nvptx-none OFFLOAD_TARGET_DEFAULT=1 Mục tiêu: x86_64-linux-gnu Được định cấu hình với: ../src/configure -v --with-pkgversion='Ubuntu 8.4.0-1ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-8/README. Lỗi --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-C++ --prefix=/usr --with-gcc-major-version-only --program-suffix=- 8 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix - -libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable- gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable -objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --mục tiêu=x86_64-linux-gnu Mô hình chủ đề: posix phiên bản gcc 8.4.0 (Ubuntu 8.4.0-1ubuntu1~18.04)

Nhưng khi chạy make all -j tôi nhận được:

mô-đun con git init cập nhật mô hình con git --init --recursive mkdir -p xây dựng && cd xây dựng && cmake .. -- CMAKE_BUILD_TYPE: Phát hành -- Nhận dạng trình biên dịch CXX không xác định Lỗi CMake tại CMakeLists.txt:42 (dự án): CMAKE_CXX_COMPILER:

/usr/bin/C++

không phải là đường dẫn đầy đủ đến công cụ biên dịch hiện có.

Cho CMake biết nơi tìm trình biên dịch bằng cách đặt môi trường biến "CXX" hoặc mục nhập bộ đệm CMake CMAKE_CXX_COMPILER vào đường dẫn đầy đủ vào trình biên dịch hoặc tên trình biên dịch nếu nó nằm trong PATH.

-- Cấu hình chưa đầy đủ, xảy ra lỗi!

Một bài đăng tương tự khác đã đề xuất bản dựng cần thiết nhưng tôi đã có bản đó - tôi cần làm gì để khắc phục?

Rất cảm ơn cho sự giúp đỡ!

lá cờ hr
Vì vậy, bạn đã thử biện pháp khắc phục được đề xuất để đặt biến môi trường CXX chưa? Ví dụ. `export CXX=/usr/bin/g++-8` trước khi chạy `make`
lá cờ nl
Không, tôi không biết, tôi không biết phải đặt nó thành gì - đã làm như bạn đề xuất nhưng g++-8 không tồn tại ...
lá cờ hr
Bạn đã cài đặt nó? Tôi đã giả định như vậy vì rõ ràng bạn đã thêm nó làm nô lệ với các lựa chọn thay thế cập nhật. Nếu không, hãy làm như vậy (`sudo apt install g++-8`)
lá cờ nl
gcc-7, g++-7 và gcc-8 tồn tại nhưng /usr/bin/g++-8 không có - tôi có thiếu bản cài đặt không?
lá cờ hr
Có khả năng là có - `g++-8` là một gói riêng biệt, cài đặt riêng `gcc-8` là không đủ
lá cờ nl
Vâng, nó đã bị thiếu - đã cài đặt nó - vẫn không có niềm vui! Cùng một tin nhắn...
lá cờ nl
Nó đang tìm kiếm /usr/bin/C++, một liên kết đến /etc/alternatives/C++, một liên kết tới /usr/bin/g++ không tồn tại...
lá cờ cc
Hãy xem https://askubuntu.com/questions/1370061/i-am-using-ubuntu-20-04-lts-trying-to-get-from-gcc-9-4-to-gcc-10- hoặc cao hơn/1370140#1370140 có một số đề xuất cho tình huống gcc tương đương.
lá cờ nl
OK, @ubfan1, tôi đã xem bài đăng và chạy lại update-alternatives và điều đó đã khắc phục được sự cố!
lá cờ nl
Rất cám ơn tất cả mọi người, trình biên dịch được tìm thấy.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.