GCC trên OS X Lion với Xcode 4.3.1


14

Sau khi cài đặt Xcode 4.3.1 trên OS X Lion, tôi đã mất trình biên dịch GCC. Tôi cần điều này cho nghiên cứu của tôi. Có ai biết làm thế nào tôi sẽ cài đặt này? Tất cả những gì tôi có thể tìm thấy là mọi người đề xuất cài đặt Xcode 4.3.1 nhưng với bản dựng Xcode mới nhất, Apple đã chuyển trình biên dịch GCC bên trong Xcode.app và dường như nó không phải là phiên bản tương tự của trình biên dịch GCC như một gói đi kèm với các phiên bản Xcode trước đó.

Câu trả lời:


24

Mở XCode đi đến tùy chọn trong phần tải xuống cài đặt công cụ dòng lệnh


2
Đây chắc chắn là cách dễ nhất để làm điều đó. Cảm ơn.
SimonBS

15

Gần đây đã có một vài bài đăng trên blog về cách thực hiện việc này, trong bối cảnh cố gắng biên dịch Ruby 1.8.7 ( của tôinhững người khác ). Câu trả lời ngắn gọn:

Cài đặt Công cụ dòng lệnh (trong Xcode: Tùy chọn> Tải xuống> Thành phần hoặc bạn có thể truy cập Apple và tải xuống riêng nếu bạn chưa / muốn cài đặt Xcode) - cài đặt này thực sự cài đặt gcclệnh Homebrew (hướng dẫn) , một trình quản lý gói cho OS X

Sau đó, cài đặt kho lưu trữ homebrew của 'dupes' và từ đó trình biên dịch GCC 4.2 chính hãng:

brew update
brew tap homebrew/homebrew-dupes
brew install apple-gcc42

/usr/bin/gccvẫn sẽ có i686-apple-darwin11-llvm-gcc-4.2, nhưng /usr/local/bin/gcc-4.2sẽ i686-apple-darwin11-gcc-4.2.1(và các công cụ liên quan, g++-4.2và vân vân, cũng trong /usr/local/bin)

Sau đó, bạn có thể sử dụng bất kỳ cơ chế nào mà quá trình xây dựng của bạn sử dụng (ví dụ: đặt các biến môi trường CC và CXX một cách thích hợp) để chọn các trình biên dịch đó thay vì các phiên bản clang.


Tôi thực sự muốn tôi đã tìm thấy giải pháp của bạn một vài ngày trước. Tôi đã chiến đấu trong hai ngày liên tiếp. Tôi sẽ +20 nếu tôi có thể.
Cơ hội

5

Tôi không sử dụng Xcode 4.3 cho các Dự án Xcode thực tế, chỉ để biên dịch nguồn dòng lệnh và có cùng một vấn đề. Bạn có thể mang lại các lệnh gcc và cc của mình bằng các lệnh bên dưới từ terminal:

cd /usr/bin
rm cc gcc c++ g++
ln -s gcc-4.2 cc
ln -s gcc-4.2 gcc
ln -s c++-4.2 c++
ln -s g++-4.2 g++

Điều này sẽ làm thay đổi toàn hệ thống , vì vậy hãy chắc chắn đó là những gì bạn muốn trước khi thực hiện.

Để các lệnh này hoạt động, bạn cũng cần cài đặt Công cụ dòng lệnh cho Xcode, nếu bạn chưa cài đặt chúng. Công cụ có thể được cài đặt thông qua ngăn tùy chọn tải xuống của Xcode.


2
Một đề xuất: thay vì xóa các nhị phân cũ (dòng 2 của tập lệnh), có lẽ chỉ cần đặt chúng vào một thư mục lưu trữ dưới / usr / bin). Bằng cách đó nếu bạn cần chúng, bạn vẫn có thể gọi chúng bằng đường dẫn tuyệt đối.
Scott C Wilson

Gợi ý tốt. Làm với họ như bạn muốn, thậm chí: mv cc cc.orig && mv gcc gcc.orighoặc một số điều như vậy.
Lantrix
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.