2012-05-03 43 views
6

我一直在將我的內核版本降級到2.6.22。 錯誤消息是:內核編譯錯誤:gcc:error:elf_i386:沒有這樣的文件或目錄

SYSCALL拱/ I386 /內核/ vsyscall-int80.so GCC:錯誤:elf_i386:沒有這樣的文件或目錄 化妝[1]:* [拱/ I386 /內核/ vsyscall -int80.so]錯誤1 make:* [arch/i386/kernel]錯誤2

我試過谷歌的答案,像降級我的gcc版本等,但沒有任何反應。 我的操作系統是Ubuntu 11.04,內核版本爲3.1.4。

那有什麼問題呢? 感謝您的回答。

+0

爲什麼要降級? – kuba

回答

22

你可以檢查應該在arch/x86/vdso/Makefile中的vdso makefile。

找到行

 VDSO_LDFLAGS
存在兩行,一行用於x64,另一行用於x32位系統。

它應該有

 -m elf_x86_64
和另外一個
 -m elf_x86

分別代替他們像

 -m64
 -m32

參考bug修復Link1 LockergnomeLink2 ubuntu

+0

雖然您的答案可能會解決其他人的問題,但它並未解決此問題,因爲在@KMHook指示問題系統調用發生在文件「arch/i386/kernel/vsyscall-int80.so」中,但您建議改變'arch/x86 /'目錄中的一些行。 – ecem

2

我用this回答這個問題,並儲存在arch/i386/kernel目錄Makefile改變了-m elf_i386部分-m32錯誤,它解決了這個問題,供將來參考。

0

我已經更改了指定的Makefile文件(arch/x86/vdso/Makefile)並解決了問題。 我的平臺是Ubuntu-12.04,Linux 3.13.0-30。

相關問題