Ошибка Cstdint при установке Pydaedalus с PiP
Я работаю над приложением, которое включает в себя поиск маршрута (совершенно другой предмет), но для тестирования мне нужны примеры лабиринтов для тестирования. Коллега предложил мне использовать pydaedalus для создания больших лабиринтов в нужном мне формате. Я использую следующий код, чтобы попытаться установить модуль:
$pip3.6 install pydaedalus
Это возвращает следующую ошибку:
-Wno-error=format-security
In file included from daedalus/_maze.cpp:467:
In file included from daedalus/wrapper.h:8:
daedalus/src/util.h:31:10: fatal error: 'cstdint' file not found
#include <cstdint>
^
1 error generated.
error: command '/usr/bin/clang' failed with exit status 1
Я провел некоторые исследования и не нашел ничего, что касалось этого. Я также сделал некоторую (ограниченную) разработку C++ с использованием cstdint, которая всегда работала.
Я сталкивался с этим вопросом, но, похоже, он решает отдельную проблему.
Я занимаюсь разработкой в OSX 10.10.5
Любая помощь, которую вы можете оказать, высоко ценится!
1 ответ
Эти ошибки компиляции сводятся к требованию daedalus к стандарту C++11, который иногда бывает немного сложным для работы на Mac OS X. Одной из идей может быть проверка, чтобы убедиться, что ваш Xcode полностью обновлен. Страница, на которую вы ссылаетесь, также предлагает попробовать соединиться со стандартной библиотекой clang вместо стандартной библиотеки GCC. Я не уверен, сработает ли это, или даст ли вам ошибки компоновки при сборке или когда вы импортируете daedalus в python, но вы все равно можете это сделать:
CFLAGS='-stdlib=libc++' pip3.6 install pydaedalus
Другая идея состояла бы в том, чтобы поощрить pip
использовать clang++
интерфейс, который также предлагает ваша ссылка, может помочь. Вы должны иметь возможность установить это с переменной среды CXX
(или, возможно, CC
).
CXX=clang++ pip3.6 install pydaedalus
Попробуйте различные комбинации этих параметров среды (например, CXX
а также CFLAGS
) и, надеюсь, что-то будет работать в конце концов.