在Gentoo系统安装Blender时遭遇依赖错误求助
解决Gentoo中安装Blender时embree依赖的CPU指令集错误
问题根源
错误核心是media-libs/embree的REQUIRED_USE约束要求至少启用一个CPU指令集标志(如sse2、sse4_2、avx等),但你的/etc/portage/make.conf中CPU_FLAGS_X86被设置为空字符串,导致依赖校验失败。
解决步骤
安装CPU指令集检测工具
先安装cpuid2cpuflags来自动识别你的CPU支持的指令集:emerge --ask sys-apps/cpuid2cpuflags生成并设置正确的CPU_FLAGS_X86
运行工具获取CPU支持的指令集列表:cpuid2cpuflags将输出的内容替换
make.conf中的CPU_FLAGS_X86行,例如如果输出是CPU_FLAGS_X86="sse2 sse3 ssse3 sse4_1 sse4_2 avx avx2",就把make.conf里的CPU_FLAGS_X86=""改成对应的内容。重新尝试安装Blender
完成设置后,再次执行安装命令:sudo emerge --ask media-gfx/blender
补充说明
- 虽然你在
COMMON_FLAGS中使用了-march=native,这会让编译器针对你的CPU优化,但Portage的CPU_FLAGS_X86是给ebuild用来启用对应功能标志的,两者作用不同,必须正确设置。 - 如果手动设置,至少要包含
sse2(几乎所有现代x86_64 CPU都支持),就能满足embree的依赖要求。
内容的提问来源于stack exchange,提问作者Pedro Juarez
相关产品推荐
相关产品推荐

