我已經在另一個網站上發布了,所以希望這不是交叉發布:
我的 Ubuntu 16.04 上有幾個版本的 gcc 和 g++,我使用替代配置來選擇它們。當編譯一個非常簡單的原始碼時,編譯器找不到標頭。
經調查,gcc 安裝沒有完整目錄,例如:
usr/lib/gcc/x86_64-linux-gnu/4.8 有一個包含 cc1.exe 的目錄
同時:
usr/lib/gcc/x86_64-linux-gnu/4.7 沒有包含目錄,也沒有 cc1.exe (只有 cc1plus.exe)
我已經重新安裝了 4.7,但似乎無法完成安裝,有什麼幫助嗎?
謝謝
艾瑪
答案1
dpkg -S
您可以使用以下命令查看哪些軟體包提供了這些元件
$ dpkg -S /usr/lib/gcc/x86_64-linux-gnu/4.7/cc1 /usr/lib/gcc/x86_64-linux-gnu/4.7/include
cpp-4.7: /usr/lib/gcc/x86_64-linux-gnu/4.7/cc1
libgcc-4.7-dev:amd64: /usr/lib/gcc/x86_64-linux-gnu/4.7/include
兩者都cpp-4.7
應該libgcc-4.7-dev
作為依賴項安裝,gcc-4.7
但是這些文件可能已被手動刪除 - 嘗試重新安裝這些軟體包,即
sudo apt-get install --reinstall cpp-4.7 libgcc-4.7-dev