首页 文章

clang:错误:未知参数:'-mno-fused-madd'

提问于
浏览
0

安装ReportLab 3.1.8时,我遇到了问题,我一直收到错误,我找不到这个编译器选项的设置位置 .

设置的重点是:

Build 'reportlab.lib._rl_accel'扩展

clang:错误:未知参数:'-mno-fused-madd'[-Wunused-command-line-argument-hard-error-in-future] clang:注意:这将是一个硬错误(不能降级为警告)将来错误:命令'cc'失败,退出状态为1

2 回答

  • 0

    这是我的解决方案 .

    Cause: 我保持我的mac最新,因此我似乎现在有一个比允许"-mno-fused-madd"命令行切换的更新(不同)版本的c编译器(clang) .

    Solution: 我没有在reportlab源代码的任何文件中找到上面的开关 . 它必须在计算机本身上 . 罪魁祸首似乎是在distutils中,因为setup.py使用模块distutils .

    问题出在文件 /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/_sysconfigdata.py 中 . 此文件包含定义为名为build_time_vars的字典 . 我们显然处于正确的位置,因为我们有构建时间问题 .

    • 首先制作副本作为保护措施 .

    • sudo <editor> <file path> 编辑文件 .

    • 然后编辑此文件,从文件中搜索并删除开关-mno-fused-madd . 我发现它以'CFLAGS'开头,因为这是一个编译标志 . 换行:

    ... -fwrapv -mno-fused-madd -DENABLE_DTRACE ... to ... -fwrapv -DENABLE_DTRACE ...

    保存文件并继续构建 . 它现在将保持固定 . 不需要环境变量或任何此类事物 .

    编辑:当你在它时,删除_sysconfigdata.pyc和_sysconfigdata.pyo文件 .

  • 1

    您仍然可以使用以下环境变量来抑制clang中的这些错误:

    export CFLAGS=-Qunused-arguments
    export CPPFLAGS=-Qunused-arguments
    

    可以在此处找到类似问题的详细答案:

    clang error: unknown argument: '-mno-fused-madd' (python package installation failure)

    根据以下问题也已在 OS X 10.9.3 中修复:

    clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]

相关问题