CERN ROOT из Miniconda на Mac OS High Sierra: конфликт libpng

Я пытаюсь установить Python 3, CERN ROOT и Jupyter lab из miniconda на свой Mac (OS High Sierra 10.13.4). Я не хочу касаться установки моей рабочей системы, то есть Python2.7 с CERN ROOT наверху, поэтому я собираюсь создать отдельную среду.

Вот как выглядит мой $ PATH, когда я начинаю:

/usr/local/Cellar/root/6.10.08/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/opt/X11/ мусорное ведро

Со свежего терминала делаю:

wget https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh bash Miniconda3-latest-MacOSX-x86_64.sh

Это устанавливает miniconda3 в / Users / urania277 / miniconda3 и добавляет следующую строку в мой .bash_profile

export PATH = "/Users/urania277/miniconda3/bin:$PATH"

так что, когда я открываю новое окно, мой PATH получает это. (Кстати, это кажется устаревшим в новой версии conda, но не влияет на следующее).

Затем в новом окне открываю conda, добавляю соответствующие каналы:

conda config --add channels https://conda.anaconda.org/NLeSC

и создайте / установите среду, которую я хочу:

conda create --name=Root6Python3 root=6 python=3 ... conda activate Root6Python3

После установки я использую сценарий ROOT, чтобы настроить среду.

source /Users/urania277/miniconda3/envs/Root6Python3/bin/thisroot.sh

но когда я пытаюсь запустить ROOT, я получаю то, что считаю конфликтом libpng:

(Root6Python3) jocke:~ urania277$ root dyld: Symbol not found: __cg_png_create_info_struct Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO Expected in: /Users/urania277/miniconda3/envs/Root6Python3/lib/libPng.dylib in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO Abort trap: 6

Я видел несколько вариантов этой ошибки на этом сайте, но ни один из найденных мной рецептов не решил мою проблему. Какие-нибудь намеки?

Спасибо! Катерина

Возможно, вы захотите проверить root-forum.cern.ch, обычно больше активности, чем на SO, в вопросах root. (Не знаю, проверяют ли там специалисты по поддержке NLeSC)

pseyfert 31.05.2018 16:54

действительно, я сделал это и связался с Mantainers NLeSC - я ждал разрешения, прежде чем публиковать здесь снова (похоже, что после некоторых изменений в самом ROOT нужно переупаковывать ROOT conda)

CatDogLund 02.06.2018 11:13
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
351
0

Другие вопросы по теме