Gentoo
致命錯誤:解除安裝 sys-devel/binutils - 出現不再工作
三週前我清理了我的系統並犯了一個致命的錯誤。好吧,我真的不知道為什麼,但我解除安裝了sys-devel/binutils。
在我認識到錯誤後,我嘗試重新出現,但它不起作用。下一步是從 Gentoo 下載 stage3 並
sys-devel/binutils
從那裡複製到本地樹。
沒用。當我嘗試出現類似的東西
x11-apps/xinput
時,我收到以下資訊:出現的輸出:
checking whether the C compiler works... no configure: error: in `/var/tmp/portage/x11-apps/xinput-1.6.2/work/xinput-1.6.2_build': configure: error: C compiler cannot create executables
來自emerge的config.log:
configure:3372: checking whether the C compiler works configure:3394: x86_64-pc-linux-gnu-gcc -m32 -march=core-avx-i -mtune=core-avx-i -O2 -pipe -Wl, -O1 -Wl, --as-needed conftest.c >&5 x86_64-pc-linux-gnu-gcc: internal compiler error: Illegal instruction (program as)
來自 /usr/bin/as 的 ldd:
linux-vdso.so.1 (0x00007ffee41b9000) libopcodes-2.25.1.so => /usr/lib64/binutils/x86_64-pc-linux-gnu/2.25.1/libopcodes-2.25.1.so (0x00007f2045ff8000) libbfd-2.25.1.so => /usr/lib64/binutils/x86_64-pc-linux-gnu/2.25.1/libbfd-2.25.1.so (0x00007f2045cd3000) libz.so.1 => /lib64/libz.so.1 (0x00007f2045abd000) libc.so.6 => /lib64/libc.so.6 (0x00007f2045722000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f204551e000) /lib64/ld-linux-x86-64.so.2 (0x00007f204637f000)
使用:
- 系統開發/binutils-2.25.1-r1
- 系統開發/gcc-4.9.3
有什麼建議嗎?有什麼提示嗎?有什麼想法可以解決嗎?讓我知道!
複製
sys-devel/binutils
並沒有解決您的問題,因為這只是定義了binutils
. 它不起作用,因為您需要該軟體包來建構任何東西,正如您已經意識到的那樣。您需要做的是複制屬於該包的文件。文件和目錄是:/etc/env.d/binutils/x86_64-pc-linux-gnu-2.25.1 /usr/lib64/binutils/x86_64-pc-linux-gnu/* /usr/share/binutils-data/x86_64-pc-linux-gnu/* /usr/x86_64-pc-linux-gnu/binutils-bin/*
將這些文件/目錄從第 3 階段 tarball 複製(遞歸)到您的實時系統中。然後,執行
env-update
並註銷並重新登錄或source /etc/profile
載入更新的環境。檢查一切是否正常,然後您應該做的第一件事是emerge binutils
正確建構該軟體包並將其記錄在您的世界文件中。如果,在這之後,你仍然不能emerge東西,你可能不得不用其他包重複這個過程。更糟糕的情況是,您可以從第 3 階段建構中複製
/usr
和/bin
層次結構,如果這樣做,我建議您跟進emerge --sync
並emerge -e world
重建所有內容。祝你好運。