虚拟交换缓存不足导致qt编译失败

qt pro make 失败:

复制代码
virtual memory exhausted: Cannot allocate memory
Makefile:9155: recipe for target 'qrc_myimages.o' failed
make: *** [qrc_myimages.o] Error 1
make: *** Waiting for unfinished jobs....

virtual memory exhausted: Cannot allocate memory

查看内存:

复制代码
free -h
             total        used        free      shared  buff/cache   available
Mem:           3.8G        450M        2.4G        101M        974M        3.2G
Swap:            0B          0B          0B

设置交换缓存:

bash 复制代码
mkdir swap
sudo dd if=/dev/zero of=swapfile bs=1M count=2048 #设置2GB缓存,bs 为块的大小,count 创建多少个块
sudo chmod 0600 swapfile #设置权限
sudo mkswap swapfile #生成的文件转换成 Swap 文件
sudo swapon swapfile  ## 激活文件
free -h # 执行命令可以看到新增了2G

              total        used        free      shared  buff/cache   available
Mem:           3.8G        848M        2.4G         91M        544M        2.8G
Swap:          2.0G        309M        1.7G

释放缓存

bash 复制代码
sudo swapoff swapfile # 执行命令后,删除创建的swap目录即可

开机自动使用该虚拟内存的启动脚本

bash 复制代码
#此时开的虚拟内存会在开机后消失,如果永久保持下去,在/etc/fstab文件尾添加一下信息:
swapfilepath swap swap defaults 0 0
#例如:我的我是在/root/进行的配置,因此添加了下面内容
/data/swap/swapfile swap swap defaults 0 0
#保存并退出即可

参考

相关推荐
cnnews11 小时前
Chromebox3安装Ubuntu后内存化与最小化 eMMC 写入优化
linux·运维·ubuntu
flytalei12 小时前
Ubuntu 24.04 单节点 K3s 部署实践:从环境评估到故障排查与验收
linux·运维·ubuntu
东风微鸣15 小时前
一次断电引发的血案:Ubuntu 26.04 升级中断后的完整救援实录
数据库·ubuntu·postgresql
Victor Zhong15 小时前
llama.cpp 部署大模型到 Ubuntu 台式机 SOP
linux·ubuntu·llama
我先去打把游戏先17 小时前
Git-Rebase使用指南-从原理到实战
服务器·git·嵌入式硬件·物联网·ubuntu
一直C20 小时前
嵌入式 Linux 驱动开发学习笔记(三)设备树、GPIO子系统、中断与外设驱动实战
驱动开发·单片机·嵌入式硬件·嵌入式·arm·imx6ull
承渊政道21 小时前
Linux网络学习【应用层自定义协议与序列化实战:从手写序列化与反序列化到深入理解进程间关系与守护进程】
linux·网络·学习·ubuntu·json·序列化与反序列化
mobai71 天前
ubuntu安装中文输入法
ubuntu
快乐的韭菜根根1 天前
ubuntu 安装slurm并配置
linux·运维·ubuntu
忆挽篱笙歌2 天前
进程的状态
linux·ubuntu