gpt4 book ai didi

ubuntu - 编译Nachos源代码时出现 “gnu/stubs-32.h: No such file or directory”错误

转载 作者:行者123 更新时间:2023-12-02 10:57:22 39 4
gpt4 key购买 nike

我正在尝试在笔记本电脑上安装Nachos,并且笔记本电脑上具有Ubuntu 11.04。

代码在C语言中,因此要构建它,我假设我将需要交叉编译器。这是我的问题所在。我使用以下命令下载了MIPS交叉编译器的源代码

  wget http://mll.csie.ntu.edu.tw/course/os_f08/assignment/mips-decstation.linux-xgcc.gz

我用解压缩
tar zxvf mips-decstation.linux-xgcc.gz      

没关系,但是当我尝试使用make构建nachos os的源代码时,出现此错误-
/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory compilation terminated. make: *** [bitmap.o] Error 1

我正在尝试按照此处给出的说明进行操作- http://mll.csie.ntu.edu.tw/course/os_f08/217.htm,并且除我尝试使用make之外,其他所有操作都正常。

最佳答案

您缺少32位libc dev软件包:

上,Ubuntu 称为libc6-dev-i386-do sudo apt-get install libc6-dev-i386。有关Ubuntu 12.04的更多说明,请参见下文。

Red Hat 发行版上,程序包名称为glibc-devel.i686(感谢David Gardner的评论)。

CentOS 5.8 上,软件包名称为glibc-devel.i386(感谢JimKleck的评论)。

CentOS 6/7 上,软件包名称为glibc-devel.i686

SLES 上,它称为glibc-devel-32bit-do zypper in glibc-devel-32bit

Gentoo 上,它称为sys-libs/glibc-执行emerge -1a sys-libs/gcc[source](注意:可以使用equery确认这是正确的;执行equery belongs belongs /usr/include/gnu/stubs-32.h)

ArchLinux 上,程序包名称为lib32-glibc-do pacman -S lib32-glibc

您正在使用 Ubuntu 12.04 吗?有a known problem that puts the files in a non standard location。您将also需要执行以下操作:

export LIBRARY_PATH=/usr/lib/$(gcc -print-multiarch)
export C_INCLUDE_PATH=/usr/include/$(gcc -print-multiarch)
export CPLUS_INCLUDE_PATH=/usr/include/$(gcc -print-multiarch)

在构建之前的某个位置(例如在.bashrc中)。

如果您还在编译C++代码,则还需要32位stdc++库。如果看到此警告:

.... /usr/bin/ld: cannot find -lstdc++ ....



上,Ubuntu 您需要做 sudo apt-get install g++-multilib
上,CentOS 5 上,您需要做 yum install libstdc++-devel.i386
上,CentOS 6 上,您需要做 yum install libstdc++-devel.i686
请随时在其他系统的软件包中进行编辑。

关于ubuntu - 编译Nachos源代码时出现 “gnu/stubs-32.h: No such file or directory”错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58733247/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com