gpt4 book ai didi

c++ - 用于二进制分发的 clang 编译器标志(通用 CPU)

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:48:09 24 4
gpt4 key购买 nike

我正在 OSX 10.11 上使用 cmakeclang (700.1.81) 为 OSX 编译一个跨平台的 C/C++ CLI 应用程序,大约 1 岁。 RMBP。我正在使用 CPack 将我的应用程序打包为拖放式 .dmg 安装程序。

当我在旧机器(~ 4 .y.o)上测试二进制文件时,我经常遇到 SIGILL 非法指令错误(即使在相同的 OSX 版本上)。我应该使用哪些神奇的编译器调用来构建“通用”CPU? llc 例如支持 -mpcu=generic 标志,但 clang 无法识别该标志,并且 clang man 页面建议 -march=cpu,但如果我尝试 -march=generic,我会收到一个error: unknown target CPU 'generic' 错误。

我已经通过 -mmacosx-version-min 指定了旧的 OSX 版本,这似乎不是问题所在。

我是否必须通过目标三元组指定通用 CPU?有哪些选项?

最佳答案

对于通用架构,请尝试 -march=x86-64。例如,这应该可以防止生成特定于 Haswell 的指令。

关于c++ - 用于二进制分发的 clang 编译器标志(通用 CPU),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34328300/

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