cvxpy stlibc ++ Ошибка установки на MacOS Mojave - PullRequest
0 голосов
/ 28 октября 2018

При попытке установить пакет cvxpy с помощью pip install на Mac я получаю следующее сообщение об ошибке:

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 работает под управлением ОС Mojave.

Ответы [ 3 ]

0 голосов
/ 01 ноября 2018

У меня была похожая ошибка на Мохаве.Проблема заключается в том, что расположение заголовков, установленных средствами командной строки XCode (включая clang), изменилось.Я смог заставить его работать, добавив это в мой ~/.bash_profile и открыв новую оболочку:

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

0 голосов
/ 15 декабря 2018

Я решил проблему, выполнив следующие шаги:

Сначала я попытался изменить флаги, чтобы указать установке использовать 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.

0 голосов
/ 29 октября 2018

Я боролся с этим весь уик-энд, и самый большой успех, который я нашел до сих пор, это установка cvxpy в среде anaconda с этими двумя строками:

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