SageMath: запуск `make` заканчивается на ImportError в фазе dochtml - PullRequest
1 голос
/ 25 мая 2019

Я пытаюсь установить пакет sagemath в мой macbook. Я вошел ./configure с последующим make. Вот последние несколько линии вывода. Не удалось отладить причину.

[sagelib-8.7] Finished cleaning, time: 0.40 seconds.
[sagelib-8.7] if [ "$UNAME" = "CYGWIN" ]; then                         \
[sagelib-8.7]       sage-rebase.sh "$SAGE_LOCAL" 2>/dev/null;            \
[sagelib-8.7]   fi
[sagelib-8.7] 
[sagelib-8.7] real  19m37.851s
[sagelib-8.7] user  59m16.416s
[sagelib-8.7] sys   2m58.759s
cp /Users/satya/Downloads/SageMath/src/bin/sage-env-config /Users/satya/Downloads/SageMath/local/bin/sage-env-config
cd ../.. && sage-logger -p './sage --docbuild --no-pdf-links all html ' logs/dochtml.log
[dochtml] Traceback (most recent call last):
[dochtml]   File "/Users/satya/Downloads/SageMath/local/lib/python2.7/runpy.py", line 163, in _run_module_as_main
[dochtml]     mod_name, _Error)
[dochtml]   File "/Users/satya/Downloads/SageMath/local/lib/python2.7/runpy.py", line 111, in _get_module_details
[dochtml]     __import__(mod_name)  # Do not catch exceptions initializing package
[dochtml]   File "/Users/satya/Downloads/SageMath/local/lib/python2.7/site-packages/sage_setup/docbuild/__init__.py", line 60, in <module>
[dochtml]     import sage.all
[dochtml]   File "/Users/satya/Downloads/SageMath/local/lib/python2.7/site-packages/sage/all.py", line 98, in <module>
[dochtml]     from sage.symbolic.all   import *
[dochtml]   File "/Users/satya/Downloads/SageMath/local/lib/python2.7/site-packages/sage/symbolic/all.py", line 3, in <module>
[dochtml]     from sage.libs.pynac.pynac import I
[dochtml]   File "sage/symbolic/expression.pxd", line 4, in init sage.libs.pynac.pynac (build/cythonized/sage/libs/pynac/pynac.cpp:30147)
[dochtml]   File "sage/symbolic/expression.pyx", line 161, in init sage.symbolic.expression (build/cythonized/sage/symbolic/expression.cpp:74075)
[dochtml] ImportError: dlopen(/Users/satya/Downloads/SageMath/local/lib/python2.7/site-packages/sage/symbolic/ring.so, 2): Symbol not found: __ZNSt3__16vectorIN5GiNaC2exENS_9allocatorIS2_EEE11__vallocateEm
[dochtml]   Referenced from: /Users/satya/Downloads/SageMath/local/lib/python2.7/site-packages/sage/symbolic/ring.so
[dochtml]   Expected in: flat namespace
[dochtml]  in /Users/satya/Downloads/SageMath/local/lib/python2.7/site-packages/sage/symbolic/ring.so
make[3]: *** [doc-html] Error 1
make[2]: *** [all-start] Error 2

real    19m41.468s
user    59m18.862s
sys 3m0.256s
***************************************************************
Error building Sage.

The following package(s) may have failed to build (not necessarily
during this run of 'make all-start'):

The build directory may contain configuration files and other potentially
helpful information. WARNING: if you now run 'make' again, the build
directory will, by default, be deleted. Set the environment variable
SAGE_KEEP_BUILT_SPKGS to 'yes' to prevent this.

make[1]: *** [all-start] Error 1
make: *** [all] Error 2

Любая помощь будет оценена.

Ответы [ 2 ]

1 голос
/ 27 мая 2019

Запуск make для SageMath выполняется в два этапа: make build, за которым следует make doc.

В вашем случае фаза make build, кажется, завершилась, и проблема была только вфаза make doc.Это означает, что у вас, вероятно, уже есть функциональный SageMath с недостатком, который не удалось собрать в документации.Поэтому вы можете попробовать и использовать его как есть.

После @Joh Palmieri я бы порекомендовал опубликовать в sage-devel или sage-support, чтобы получить помощь в отладке сбоя make.Будет полезно указать операционную систему, в которой это произошло (какая версия macOS), если процедура запуска была запущена из каталога, полученного с помощью git clone, или из исходного архива, какая точная последовательность операций была выполнена.

Кроме того, при следующей попытке вы, возможно, захотите переместить папку SageMath из папки «Загрузки» перед запуском make, поскольку установка Sage не может быть перемещена после того, как она была запущена один раз (если Sage перемещен, одиндолжен снова запустить make, прежде чем его можно будет использовать).

0 голосов
/ 18 июня 2019

Если исходить из ответа Самуила, вы можете попробовать другое: просто запустить make doc-clean, а затем make doc еще раз.Я обнаружил, что (на Mac) иногда возникает странная отрыжка, которую я никогда не могу отследить, и это обычно проходит.

...