2013-06-11 69 views
12

Làm cách nào để cài đặt CLang trên Ubuntu, sử dụng các tệp nhị phân được biên dịch trước của CLang mà tôi đã tải xuống?Làm thế nào để cài đặt CLang bằng cách sử dụng nhị phân biên dịch sẵn?

Đây là cách tôi đã tải về Clang: "LLVM Trang Tải" -> "Tải LLVM 3.2" -> "Clang Binaries cho Ubuntu-12.04/x86_64"

Sau đó, tôi mở rộng lưu trữ vào một (http://llvm.org/releases/3.2/clang+llvm-3.2-x86_64-linux-ubuntu-12.04.tar.gz.) thư mục trên máy Ubuntu 64.04 LTS 64 bit của tôi. Nội dung của thư mục mở rộng trông giống như sau:

$ ls clang+llvm-3.2-x86_64-linux-ubuntu-12.04 
bin docs include lib share 

Câu hỏi: Tôi phải làm gì tiếp theo? Tôi có phải tự mình sao chép chúng vào một số thư mục hay không, và nếu có, chính xác là những thư mục nào? Hầu hết các hướng dẫn tôi tìm thấy trực tuyến là để xây dựng CLang từ nguồn, mà không áp dụng ở đây.

Tôi là người mới đến hầu hết các công cụ này. Tôi đã tạo ra một chương trình C++ hello-world cơ bản, và có thể biên dịch và chạy nó, sử dụng GCC và các autotools. Bây giờ, tôi muốn biên dịch cùng một chương trình với CLang.

Trả lời

2

Giả sử bạn đã biên dịch chương trình của mình bằng g ++ hello.cpp

Tương đương gcc và g ++ là clang và clang ++ tương ứng. Chúng được tìm thấy trong thư mục bin.

Việc bạn đặt các thư mục ở đâu không quan trọng, điều quan trọng là bạn không di chuyển chúng sau này. Vì vậy, đặt chúng ở đâu đó (tôi thích $ HOME và tôi sẽ giả định này cho tới)

Sau đó:

  1. Thêm vào trước nó đến $ PATH biến

export PATH=~/clang+llvm-3.2-x86_64-linux-ubuntu-12.04/bin/:$PATH

  1. Thực hiện việc này vĩnh viễn bằng cách thêm nó vào ~/.bashrc

    echo "export PATH = ~/kêu vang + llvm-3.2-x86_64-linux-ubuntu-12.04/bin /: \ $ PATH" >> ~/.bashrc

Bây giờ bạn có thể làm vang ++ hello.cpp

+0

Các bước này sẽ không giải quyết liên kết đến thư viện Clang trong thư mục lib. Một trong những trường hợp tôi đã tìm thấy đó là vấn đề là khi sử dụng AddressSanitizer của Clang.Điều này đòi hỏi (ngầm) liên kết đến các thư viện Clang. Tôi không có giải pháp khi cài đặt các tệp nhị phân dựng sẵn nhưng tôi muốn. – NoahR

+0

Bạn có thể thêm thư mục lib vào $ LD_LIBRARY_PATH theo cách tôi đã cho $ PATH –

10

bạn có thể làm theo các bước tương tự như đã đề cập trong https://askubuntu.com/questions/89615/how-do-i-install-llvm-clang-3-0

sử dụng GNU tar:

wget <clang-binaries-tarball-url> # or `curl -O <url>` 
tar xf clang* 
cd clang* 
sudo cp -R * /usr/local/ 

Nếu bạn tar không phải là GNU và

  • lưu trữ bạn nhận được là .tar.gz, bạn có thể sử dụng tar -xzf;
  • nếu bạn có .tar.xz lưu trữ, bạn có thể sử dụng tar -xJf;
  • cho .tar.bz2 lưu trữ, bạn có thể sử dụng tar -xjf.
+0

Điều này đã làm cho tôi cảm ơn. Tôi gặp lỗi với 'tar xzf'" không có định dạng gzip ". 'tar xf' đã tìm ra nó. – MatrixManAtYrService

+0

Cảm ơn Ma trận, có vẻ như họ đã thay đổi nén tarball. Tôi đã cập nhật nó thành 'tar xf' để được tổng quát hơn. –

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