2016-06-20 4 views
1

Я пытаюсь поместить scikit-learn и pandas в Sage 7.2 (на El Capitan). Я успешно сделал это в Sage 6.6. Однако, когда я ввожу /Applications/SageMath-7.2.app/Contents/Resources/sage/sage --pip install scikit-learn (тот же результат для pandas), появляется следующее сообщение об ошибке.Scikit-learn and pandas in Sage 7.2

creating build/temp.macosx-10.9-x86_64-2.7 
creating build/temp.macosx-10.9-x86_64-2.7/sklearn 
creating build/temp.macosx-10.9-x86_64-2.7/sklearn/svm 
creating build/temp.macosx-10.9-x86_64-2.7/sklearn/svm/src 
creating build/temp.macosx-10.9-x86_64-2.7/sklearn/svm/src/libsvm 
compile options: '-I/Applications/SageMath-7.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/numpy-1.11.0-py2.7-macosx-10.9-x86_64.egg/numpy/core/include -c' 
g++: sklearn/svm/src/libsvm/libsvm_template.cpp 
In file included from sklearn/svm/src/libsvm/svm.cpp:53:0, 
       from sklearn/svm/src/libsvm/libsvm_template.cpp:6: 
/Applications/SageMath-7.2.app/Contents/Resources/sage/local/lib/gcc/x86_64-apple-darwin15.4.0/4.9.3/include-fixed/math.h:45:23: fatal error: sys/cdefs.h: No such file or directory 
#include <sys/cdefs.h> 
        ^
compilation terminated. 
In file included from sklearn/svm/src/libsvm/svm.cpp:53:0, 
       from sklearn/svm/src/libsvm/libsvm_template.cpp:6: 
/Applications/SageMath-7.2.app/Contents/Resources/sage/local/lib/gcc/x86_64-apple-darwin15.4.0/4.9.3/include-fixed/math.h:45:23: fatal error: sys/cdefs.h: No such file or directory 
#include <sys/cdefs.h> 
        ^
compilation terminated. 
error: Command "g++ -fno-strict-aliasing -I/Applications/SageMath-7.2.app/Contents/Resources/sage/local/var/tmp/sage/build/python2-2.7.10.p1/include -DNDEBUG -g -fwrapv -O3 -Wall -Wno-unused -I/Applications/SageMath-7.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/numpy-1.11.0-py2.7-macosx-10.9-x86_64.egg/numpy/core/include -c sklearn/svm/src/libsvm/libsvm_template.cpp -o build/temp.macosx-10.9-x86_64-2.7/sklearn/svm/src/libsvm/libsvm_template.o" failed with exit status 1 

---------------------------------------- 
Command failed with error code 1 

Мне не удалось найти пути для продолжения. Единственная проблема, о которой я могу думать, это то, что инструкции по установке относятся к macosx-10.9, но El Capitan - 10.11. Так может быть, это проблема?

ответ

2

Ваша проблема в примечании No such file or directory. Я предлагаю вам установить инструменты командной строки или даже Xcode. Вы делали что-то в следующем порядке?

  1. Установите Sage
  2. В какой-то момент обновить Mac OS
  3. Улучшайте Sage
  4. Попробуйте установить панд и т.д.

Если да, то, вероятно, это проблема. Я только что обновил свой Mac и должен был повторно установить инструменты командной строки дважды, прежде чем он узнает об этом. К счастью, в наши дни это не очень сложно - откройте терминал и попробуйте использовать gcc или что-то в этом роде должно подскажите, хотя ваш пробег может отличаться.

Тогда ваша команда должна работать нормально, она работает для меня.

+1

Именно так. Я не переустанавливал инструменты командной строки Xcode после моего обновления до El Capitan. Сделано это, и теперь scikit и панды устанавливаются правильно. Благодарю. –