2014-04-14 40 views
6

Làm thế nào tôi có thể thiết lập Xcode để sử dụng tiếng kêu phân phối bởi llvm.org thay vì mã được vận chuyển bởi Apple?Làm cách nào để Xcode sử dụng phiên bản thay thế của tiếng kêu vang?

Nếu tôi tải về và cài đặt clang binaries để /usr/local và sau đó thiết lập trình biên dịch của tôi để khác ... ->/usr/local/bin/clang trong Xcode, sau đó tôi nhận được lỗi có dạng:

trình biên dịch không được hỗ trợ '/ usr/local/bin/clang 'được chọn cho kiến ​​trúc' x86_64 '

Không thể xác định trình biên dịch GCC cụ thể cho tệp ... loại sourcecode.cc

UPDATE: Tôi đã tìm thấy một cách để làm cho công việc này bằng cách symlinking /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr vào thư mục clang+llvm-3.4-x86_64-apple-darwin10.9 gốc, nhưng nó sẽ là tốt hơn nhiều đó là Có cách nào để thiết lập một trình biên dịch thay thế cho Xcode mà không sửa đổi Cây thư mục Xcode.

Trả lời

10

Tùy chọn đơn giản nhất (cũng dễ nhất để đảo ngược) là thêm cờ xây dựng CC. Chuyển đến cài đặt xây dựng của dự án hoặc mục tiêu và chọn Trình biên tập ->Thêm cài đặt bản dựng ->Thêm cài đặt do người dùng xác định từ trình đơn.

Adding custom build flags

Tên cờ CC, và thiết lập giá trị cho các đường dẫn đến nhị phân Clang của bạn.

Setting the <code>CC</code> flag

Bạn có thể chọn xem bạn có muốn sử dụng trình biên dịch này cho tất cả xây dựng, hoặc chỉ debug xây dựng (điều này có ý nghĩa khi bạn sử dụng phiên bản thử nghiệm và/hoặc tự sửa đổi của Clang, ví dụ).

Lưu ý rằng đối với các tính năng như tự động hoàn thành, tìm kiếm biểu tượng, vv, Xcode không sử dụng thư viện Clang nhưng các thư viện LLVM khác được phân phối bằng Xcode. Tôi đã mô tả cách thay thế chúng trong another post (ít nhiều cách tiếp cận tương tự như bạn đã thực hiện). Chỉ bằng cách thay đổi phiên bản Clang, bạn có thể nhận được các cảnh báo khác nhau sau khi biên dịch so với các cảnh báo được hiển thị trong trình chỉnh sửa khi nhập.

+0

Câu trả lời hoàn hảo, cảm ơn! –

2

Câu hỏi cũ của nó, nhưng vì tôi muốn cài đặt clang/libC++ gần đây hơn để sử dụng với Xcode 9+, đây là giải pháp của tôi với hy vọng nó sẽ hữu ích cho ai đó.

  1. Nếu bạn đang xây dựng từ nguồn, hãy đảm bảo chuyển -DLLVM_CREATE_XCODE_TOOLCHAIN=ON sang cmake, sau đó chạy make install-xcode-toolchain. Nếu bạn cài đặt với homebrew, sử dụng brew install --with-toolchain llvm
  2. Sao chép thư mục toolchain từ wherewher cài đặt nó (usr// local/toolchains lẽ) đến/Library/Developer/toolchains
  3. Restart Xcode, bạn sẽ thấy một tùy chọn dãy công cụ trong Menu Xcode.

Một vấn đề cụ thể mà tôi gặp phải là tiếng kêu kêu vang "không thể sử dụng tùy chọn -o với nhiều tệp đầu ra". Điều này là do tại thời điểm viết clang của Apple này có một tùy chọn mới bị thiếu trong thân cây.Để khắc phục điều này, hãy tắt chức năng Index-While-Building trong cài đặt dự án của bạn.

+0

Bạn đã tìm thấy "Chỉ mục trong khi xây dựng" 'Cài đặt tệp/dự án 'ở đâu? –

+0

Nơi có tất cả các tùy chọn xây dựng khác. Nhấp vào dự án cấp cao nhất trong cây dự án. – MrMobster

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