“cc1plus:错误:'-march ='开关的错误值('tigerlake')”编译错误

Jos*_*237 11 c++ compiler-errors makefile compilation openframeworks

cc1plus: error: bad value (\xe2\x80\x98tigerlake\xe2\x80\x99) for \xe2\x80\x98-march=\xe2\x80\x99 switch\n\ncc1plus: note: valid arguments to \xe2\x80\x98-march=\xe2\x80\x99 switch are: nocona core2 nehalem corei7 westmere sandybridge corei7-avx ivybridge core-avx-i haswell core-avx2 broadwell skylake skylake-avx512 cannonlake icelake-client icelake-server cascadelake bonnell atom silvermont slm goldmont goldmont-plus tremont knl knm x86-64 eden-x2 nano nano-1000 nano-2000 nano-3000 nano-x2 eden-x4 nano-x4 k8 k8-sse3 opteron opteron-sse3 athlon64 athlon64-sse3 athlon-fx amdfam10 barcelona bdver1 bdver2 bdver3 bdver4 znver1 znver2 btver1 btver2 native\n\ncc1plus: error: bad value (\xe2\x80\x98tigerlake\xe2\x80\x99) for \xe2\x80\x98-mtune=\xe2\x80\x99 switch\n\ncc1plus: note: valid arguments to \xe2\x80\x98-mtune=\xe2\x80\x99 switch are: nocona core2 nehalem corei7 westmere sandybridge corei7-avx ivybridge core-avx-i haswell core-avx2 broadwell skylake skylake-avx512 cannonlake icelake-client icelake-server cascadelake bonnell atom silvermont slm goldmont goldmont-plus tremont knl knm intel x86-64 eden-x2 nano nano-1000 nano-2000 nano-3000 nano-x2 eden-x4 nano-x4 k8 k8-sse3 opteron opteron-sse3 athlon64 athlon64-sse3 athlon-fx amdfam10 barcelona bdver1 bdver2 bdver3 bdver4 znver1 znver2 btver1 btver2 generic native\n\nmake[2]: *** [makefileCommon/compile.core.mk:240: /home/josue/Documents/of_v0.11.0_linux64gcc6_release/libs/openFrameworksCompiled/lib/linux64/obj/Release/libs/openFrameworks/events/ofEvents.o] Error 1\n\nmake[1]: *** [makefileCommon/compile.core.mk:204: Release] Error 2\n\nmake[1]: Leaving directory '/home/josue/Documents/of_v0.11.0_linux64gcc6_release/libs/openFrameworksCompiled/project'\nmake: *** [/home/josue/Documents/of_v0.11.0_linux64gcc6_release/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:125: Release] Error 2\n
Run Code Online (Sandbox Code Playgroud)\n

每当我尝试在终端中使用 make 命令进行编译时,都会收到此错误。程序在我的旧笔记本电脑和台式机上编译并运行良好。使用开放框架库。我使用的是 XPS 13 9310,它有一个错误提到的 Tigerlake 处理器。XPS 运行的 Pop!_OS 与我的桌面相同。任何帮助将不胜感激。

\n

小智 24

您可以将 gcc&g++ 更新到更高版本(10):

sudo apt install gcc-10 g++-10
Run Code Online (Sandbox Code Playgroud)
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 --slave /usr/bin/g++ g++ /usr/bin/g++-10 --slave /usr/bin/gcov gcov /usr/bin/gcov-10
Run Code Online (Sandbox Code Playgroud)

然后你可以按照以下顺序选择默认的 gcc 版本:

sudo update-alternatives --config gcc
Run Code Online (Sandbox Code Playgroud)

参考: https: //www.cnblogs.com/livelab/p/13049117.html

  • 这应该是公认的答案。(接受的答案不起作用)。 (2认同)

Jos*_*237 7

使用以下方法解决了安装 g++-10 和 gcc-10 的问题:

sudo apt install g++-10
sudo apt install gcc-10
Run Code Online (Sandbox Code Playgroud)

然后运行 ​​make:

make CC=gcc-10 CPP=g++-10 CXX=g++-10 LD=g++-10
Run Code Online (Sandbox Code Playgroud)

感谢退休忍者和疯狂科学家。