答案1
我需要在 debian jessie 上安裝 GCC 5+,並且可用於 debian 測試(至少在 jun-16),您可以使用 apt-pinning 來安裝那裡可用的軟體包(請參閱https://wiki.debian.org/AptPreferences)。
要使用 apt-pinning 在 debian jessie 上進行測試來安裝 GCC 5+:
/etc/apt/sources.list.d
透過在包含該行的目錄中建立一個文件,將 debian 測試儲存庫新增至您的 apt 來源中deb http://ftp.us.debian.org/debian testing main contrib non-free
/etc/apt/preferences.d
透過建立包含以下內容的檔案來指示 debian 在某些套件上使用測試來源:Package: * Pin: release a=testing Pin-Priority: 100
更新 apt 資料庫:
sudo apt-get update
從測試中安裝 gcc:
sudo apt-get install -t testing gcc
請注意,使用
-t testing
告訴 apt-get 從前面配置的測試來源安裝 gcc。
我強烈建議在再次編譯原始程式碼之前清理所有編譯並重新編譯所有依賴項。
玩得開心!
答案2
截至 2017 年 2 月 19 日,gcc-5 已已刪除來自測試:
https://tracker.debian.org/pkg/gcc-5
apt-get install gcc-5
如果您先以 root 身分執行此行,則可以:
echo "deb http://ftp.us.debian.org/debian unstable main contrib non-free" > /etc/apt/sources.list.d/unstable.list
然後,您可能希望/etc/apt/preferences.d
根據 llekn 的答案更改該來源的優先順序。
答案3
要將之前的 2 個答案合併為一個有效的答案:
echo "deb http://ftp.us.debian.org/debian unstable main contrib non-free" >> /etc/apt/sources.list.d/unstable.list
apt-get update
apt-get install -t unstable gcc-5
但!當您安裝來自 stable 的軟體包時,請自行承擔使用此功能的風險。/etc/apt/sources.list.d/unstable.list
安裝軟體包後,您可能還想將其刪除。
如果可能,請在 Docker 下安裝,這樣就不會弄亂作業系統。你的旅費可能會改變。
答案4
我能夠gcc-5
從 Debian 10.13“buster”上的 Ubuntu 儲存庫安裝。這是一個非常糟糕的做法,但我別無選擇。
這是命令(CI 友好)
apt-get remove -y gcc
echo "deb http://us.archive.ubuntu.com/ubuntu/ xenial main" >> /etc/apt/sources.list.d/buster.list
echo "deb http://us.archive.ubuntu.com/ubuntu/ xenial universe" >> /etc/apt/sources.list.d/buster.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5 3B4FE6ACC0B21F32
apt-get update
apt-get install -y gcc-5 g++-5
ln -s /usr/bin/gcc-5 /usr/bin/gcc
ln -s /usr/bin/g++-5 /usr/bin/g++