2012-04-29 28 views
6

Tôi đang gặp khó khăn khi trở về nhà để làm việc với Lion. Đối với một số lý do, nó được chọn lên tiếng kêu thay vì gcc.Homebrew không thể tìm thấy gcc

==> Upgrading gnutls 
... 
checking for gcc... 
/usr/bin/clang checking whether the C compiler works... no 

'bác sĩ brew' cho biết:

We couldn't detect gcc 4.2.x. Some formulae require this compiler. NOTE: Versions of XCode newer than 4.2 don't include gcc 4.2.x. 

Chú ý: Tôi đã cài đặt các công cụ dòng lệnh từ XCode, bao gồm gcc.

$ which gcc 
/usr/bin/gcc 
$ gcc -v 
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.9.00) 

Làm thế nào tôi có thể ép brew sử dụng gcc?

Trả lời

12

Sau Xcode 4.2, Apple đã ngừng phân phối gcc bằng Xcode. Thay vào đó, chúng phân phối llvm-gcc (và clang), là không phải là gcc. Bạn có thể thấy điều này với gcc -v, giống như bạn đã làm: nó hiển thị LLVM build.

Để sử dụng gcc, bạn sẽ phải tự biên dịch. Có một công thức homebrew cho điều này, nhưng bạn sẽ phải gõ homebrew/dupes với brew tap homebrew/dupes.

Lưu ý rằng kể từ hôm nay, công thức gcc không hoạt động nếu được biên dịch bằng tiếng kêu. Bạn phải cài đặt nó với brew install --use-llvm gcc.

Cũng lưu ý rằng Homebrew tìm kiếm gcc-4.2 một cách rõ ràng. Bạn sẽ phải tạo một liên kết tượng trưng cho Homebrew để tìm gcc.

+0

Cảm ơn thông tin. Tôi đã thử 'brew tap', nhưng phiên bản brew của tôi đã quá cũ cho tính năng mới này, và 'brew upgrade' là làm thế nào tôi gặp lỗi trong câu hỏi ban đầu của tôi, vì vậy tôi đã bị mắc kẹt. Tôi đã kết thúc giải quyết vấn đề của tôi gỡ bỏ cài đặt của tôi brew (xem [ở đây] (https://github.com/mxcl/homebrew/wiki/FAQ/1ef6c2cf55db89252949c7bb2908abe093a3414a)), sau đó cài đặt lại (xem [ở đây] (https://github.com/mxcl/homebrew/wiki/installation)). Tôi cũng phải thực hiện thêm một số bước trước khi cài đặt lại, bởi vì tôi đã cài đặt không chính xác bia làm gốc, ví dụ: "sudo rm /usr/local/.git". Cuối cùng, tôi không cần một gcc mới. – ishmael

+1

@ishmael Đó là sự khác biệt giữa bản cập nhật 'brew' (Homebrew) và 'brew upgrade' (công thức). –

+0

Đối với tôi, --use-llvm sẽ báo lỗi khi tạo bootstrap. 'brew install --use-gcc gcc48' hoạt động cho tôi. – xgdgsc

Các vấn đề liên quan