Cách cài đặt gcc 4.8.1 trên whianzy whianzy


10

Tôi muốn cài đặt GCC 4.8.1 trên hệ thống Debian Wheezy 7.1.0 của mình. Phiên bản hiện tại của GCC được cài đặt trên hệ thống của tôi là 4.7.2. Tôi thấy gcc-4.8.1 có sẵn trên kho Debian. Ai đó có thể chỉ cho tôi cách thực hiện bản cập nhật này không?


1
Bạn có thể cho chúng tôi biết lý do tại sao bạn muốn làm điều đó? Nó gần như chắc chắn sẽ gây ra nhiều vấn đề hơn nó sẽ giải quyết.
terdon

Tại sao tôi phải có vấn đề? Phiên bản gcc mới này có một số vấn đề?
Mazzy

Không, chỉ là các chương trình nhất định có thể có phụ thuộc cho các phiên bản cụ thể. Trừ khi bạn cần một tính năng mới chỉ tồn tại trong phiên bản mới nhất, việc cập nhật gcckhông đáng để bỏ công sức và có thể phá vỡ mọi thứ. Tại sao bạn cần cập nhật?
terdon

1
Như tôi đã nói, đó không phải là một ý tưởng tốt trừ khi bạn biết rằng tôi) sẽ không phá vỡ bất kỳ sự phụ thuộc nào và ii) có một cái gì đó bạn cần trong phiên bản mới. Cập nhật các thành phần cơ bản như trình biên dịch hệ thống của bạn mà không có lý do chính đáng không phải là một ý tưởng tốt.
terdon

1
Đây là câu trả lời của tôi cho một câu hỏi tương tự: Nhận gcc mới nhất cho debian?
Faheem Mitha

Câu trả lời:


5

Bạn có thể sử dụng một cái gì đó như thế này. Tuy nhiên, nó không được khuyến khích .

Nếu bạn thực sự biết những gì bạn đang làm, bạn có thể thử làm theo:

Jessie (thử nghiệm) hiện chứa gcc-4.8 tương thích với C ++ 11 (cũng có sẵn gcc-4.9).

Tôi đã sử dụng apt-pinning theo cách sau:

Một nguồn để jessie đã được thêm vào /etc/apt/source.list:

deb http://ftp.uk.debian.org/debian/ jessie main non-free contrib

/etc/apt/preferences đã được chỉnh sửa như vậy:

    Package: *
    Pin: release a=wheezy
    Pin-Priority: 900

    Package: gcc*
    Pin: release a=jessie
    Pin-Priority: 910

Sau đó,

$ sudo aptitude update
$ sudo aptitude install gcc-4.8/jessie

$ ln -s /usr/bin/gcc-4.8 /usr/bin/gcc
$ sudo aptitude install g++-4.8/jessie
$ ln -s /usr/bin/g++-4.8 /usr/bin/g++

LƯU Ý: Phiên bản mới hơn của gcc có thể phụ thuộc vào phiên bản mới hơn libc6, điều đó có nghĩa là ngay cả khi bạn biên dịch chương trình của mình với gcc-4.8, bạn sẽ không thể chạy chương trình được biên dịch trên máy khò khè khác.

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.