gpt4 book ai didi

c - 无法用 make 编译 | fatal error 设备上没有剩余空间

转载 作者:IT王子 更新时间:2023-10-29 00:25:24 26 4
gpt4 key购买 nike

情况:刚刚安装了linux,正在尝试学习编码c。使用 sudo apt-get install build-essential 进行设置。在我的代码中打开 nano type

#include <stdio.h>

int main(int argc, char *argv[])
{
puts("Hello World.\n");
return 0;
}

打开另一个控制台选项卡,输入 make ex1然后我的世界向下旋转到我在我的第一个 Linux 发行版上还没有经历过的最黑暗的深渊。

ragnar@ragnar:~/Documents/C$ make ex1
cc -Wall -g ex1.c -o ex1
ex1.c:7:1: fatal error: error closing /tmp/cc8d7Oap.s: No space left on device
}
^
compilation terminated.
make: *** [ex1] Error 1


ragnar@ragnar:~/Documents/C$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdb5 4.0G 3.8G 0 100% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 7.9G 8.0K 7.9G 1% /dev
tmpfs 1.6G 1.4M 1.6G 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 7.9G 8.1M 7.9G 1% /run/shm
none 100M 28K 100M 1% /run/user
/dev/sdb2 96M 29M 68M 30% /boot/efi
/dev/sdb7 11G 248M 9.5G 3% /home

感谢所有帮助。

最佳答案

包含根文件夹 (/) 的分区已 100% 满。根文件夹目前还包含/tmp文件夹,用于编译时存放临时文件。由于根文件夹和 tmp 文件夹已满,因此失败。

要解决此问题,请添加更多空间或重新组织现有空间。

作为解决方法

mkdir ~/tmp
export TMPDIR=~/tmp

并重试编译。


组织文件系统的一种灵活方式是使用单独的分区

/
/usr
/home
/var
/tmp

一种懒惰的方法是将 /tmp/ 链接到 /var/tmp。然而,这可能会导致问题,因为在清理方面,操作系统可能会处理 /var/tmp 中与 /tmp 中的内容不同的内容。也就是说 /tmp/ 的内容会在每次启动时被删除,而 /var/tmp 则不会。

关于c - 无法用 make 编译 | fatal error 设备上没有剩余空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31493663/

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