You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 14.04添加noxsave至Grub报错,求禁用AVX解决方案

嘿,我来帮你搞定这两个问题!

一、关于grub添加noxsave报错的问题

你遇到的noxsave: not found错误,根源是错误的参数添加方式
/etc/default/grub本质是一个shell脚本,update-grub执行时会解析这个文件里的内容。你直接把noxsave单独写在文件末尾,会被当成一条shell命令来执行,系统自然找不到这个命令,所以报错。

正确的操作方式是:
找到文件里的GRUB_CMDLINE_LINUX_DEFAULTGRUB_CMDLINE_LINUX变量,把noxsave参数追加到变量的引号内部。比如:

  • 原内容可能是:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
  • 修改后:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash noxsave"

如果GRUB_CMDLINE_LINUX是空值,也可以把参数加在这里:GRUB_CMDLINE_LINUX="noxsave"

修改完成后再执行sudo update-grub,就不会报错了,重启系统后参数会生效。

二、编译C文件时禁用AVX指令的编译标志

当然有对应的编译选项,分编译器情况说明:

  • GCC编译器:使用-mno-avx可以禁用基础AVX指令集,如果需要同时禁用AVX2、AVX-512等扩展指令,可追加-mno-avx2-mno-avx512f等参数。
    实际编译示例:
    gcc -mno-avx -mno-avx2 your_file.c -o your_program
    
  • Clang编译器:兼容大部分GCC的编译选项,上述参数同样适用。
  • Makefile配置:如果用Makefile管理编译,直接在CFLAGS里添加这些选项即可:
    CFLAGS += -mno-avx -mno-avx2
    

内容的提问来源于stack exchange,提问作者PAPAmidNIGHT

火山引擎 最新活动