【问题标题】:cvxpy stlibc++ Installation error on MacOS MojaveMacOS Mojave上的cvxpy stlibc++安装错误
【发布时间】:2019-04-01 15:48:58
【问题描述】:

在 Mac 上尝试使用 pip install 安装 cvxpy 包时,我收到以下错误消息:

warning: include path for stdlibc++ headers not found; pass '-std=libc++' on the command line to use the libc++ standard library instead [-Wstdlibcxx-not-found]
In file included from cvxpy/cvxcore/src/cvxcore.cpp:15:
cvxpy/cvxcore/src/cvxcore.hpp:18:10: fatal error: 'vector' file not found
#include <vector>
^~~~~~~~
1 warning and 1 error generated.
error: command '/usr/bin/clang' failed with exit status 1

Mac 正在运行 OS Mojave。

【问题讨论】:

    标签: python python-3.x libc++ cvxpy


    【解决方案1】:

    我通过以下步骤解决了这个问题,

    首先我尝试更改标志以指示安装使用libc++

    CFLAGS=-stdlib=libc++ pip install cvxpy
    

    然后它抱怨有一个invalid deployment target for -stdlib=libc++ (requires OS X 10.7 or later)

    然后我运行以下命令来设置部署目标,

    export MACOSX_DEPLOYMENT_TARGET=10.10
    

    然后再次运行第一个命令(CFLAGS=-stdlib=libc++ pip install cvxpy)成功安装了cvxpy。

    【讨论】:

      【解决方案2】:

      我整个周末都在为此苦苦挣扎,到目前为止,我发现的最成功的方法是在 anaconda 环境中安装 cvxpy,其中包含以下两行:

      conda install -c conda-forge lapack
      conda install -c cvxgrp cvxpy
      

      【讨论】:

      • 谢谢。但我没有使用 anaconda 发行版。我在 pip 安装 cvxpy 时遇到问题。
      • 将 Mac OS 命令行工具更新至 10.1 版。更新后pip install cvxpy 安装就像一个魅力。
      • pip install cvxpy 之前使用CFLAGS=-stdlib=libc++,比如CFLAGS=-stdlib=libc++ pip install cvxpy 也可能有效。
      • 这对我在 OS X 10.14 上构建 fancyimpute 有用!
      【解决方案3】:

      我在 Mojave 上遇到了类似的错误。问题是 XCode 命令行工具(包括 clang)安装的头文件的位置已经改变。我可以通过将它添加到我的~/.bash_profile 并打开一个新的 shell 来让它工作:

      export CFLAGS="-I/usr/local/include -L/usr/local/lib -I$(brew --prefix openssl)/include -I$(xcrun --show-sdk-path)/usr/include"

      这会向 CLANG 添加标志,告诉它运行 xcrun 命令来查找标头。它还将 homebrew openssl 标头添加到 clang 路径中​​,这对于这种情况可能不是必需的(并假设您已安装它们)。

      见:https://stackoverflow.com/a/52871908/8344813

      【讨论】:

        猜你喜欢
        • 2019-03-27
        • 2019-08-13
        • 1970-01-01
        • 1970-01-01
        • 2019-07-11
        • 1970-01-01
        • 2020-07-16
        • 2022-01-10
        相关资源
        最近更新 更多