2012-04-29 19 views
5

Tôi muốn cài đặt trình biên dịch clang (3.1) mới nhất bằng macports (tôi sử dụng emacs hơn là xcode, và phiên bản của clang đi kèm với xcode là cũ hơn). macports dường như có phiên bản mới nhất của gcc, nhưng khi tôi nhập "danh sách cổng clang", phiên bản duy nhất hiển thị là 2.9. Tôi sử dụng các tính năng C++ 11, vì vậy tôi muốn sử dụng phiên bản mới nhất.Làm thế nào để cài đặt clang 3.1 bằng macports? (OSX, báo tuyết)

Tôi đang chạy báo tuyết trên MBP.

Trả lời

9

Clang có các phiên bản khác nhau có sẵn trên MacPorts:

$ port search clang 

clang @2.9 (lang) 
    C, C++, Objective C and Objective C++ compiler 

clang-2.9 @2.9 (lang) 
    C, C++, Objective C and Objective C++ compiler 

clang-3.0 @3.0 (lang) 
    C, C++, Objective C and Objective C++ compiler 

clang-3.1 @3.1-r154872 (lang) 
    C, C++, Objective C and Objective C++ compiler 

clang-devel @3.0 (lang) 
    C, C++, Objective C and Objective C++ compiler 

clang_select @0.1 (sysutils) 
    common files for selecting default clang version 

Found 6 ports. 

Vì vậy, nếu bạn chỉ cần cài đặt cổng clang, nó sẽ cài đặt phiên bản 2.9. Nếu bạn muốn 3.1, hãy cài đặt cổng clang-3.1. Bạn cũng có thể cài đặt clang_select, một tiện ích cho phép bạn dễ dàng chuyển đổi giữa nhiều cài đặt của Clang; mà không có nó, bạn phải tự xác định phiên bản của nhị phân Clang bạn muốn mỗi lần.

+0

Cảm ơn. Tôi đoán tôi đã nhầm lẫn vì "danh sách" cho thấy tất cả các phiên bản khác nhau của gcc, nhưng không phải của tiếng kêu vang. – daj

+0

Tôi có thể sử dụng tiện ích clang_select như thế nào? Tôi không thể tìm thấy nó ... –

+0

@BarnabasSzabolcs: Rõ ràng nó bí mật là một tiểu ban của 'cổng' — bạn chọn một phiên bản của Clang để chạy với lệnh 'cổng chọn --set clang ' (và bạn có thể liệt kê các phiên bản có sẵn với 'cổng chọn --show clang'). –

1

Chỉ cần ghi rõ số phiên bản: port list clang-3.1

Làm việc tốt cho tôi. Tôi đang ở trên Lion, nhưng tôi không hiểu tại sao điều đó lại tạo nên sự khác biệt.