делает pip install scipy
в чистом, пустом virtualenv на odroid XU4 (питон 2.7, Ubuntu 15.04)пункт установить SciPy используя неправильную архитектуру
uname -a
Linux odroid 3.10.82-57 #1 SMP PREEMPT Wed Oct 7 13:19:01 BRT 2015 armv7l armv7l armv7l GNU/Linux
выход:
...
gfortran: error: unrecognized argument in option ‘-march=x86-64’
gfortran: note: valid arguments to ‘-march=’ are: armv2 armv2a armv3 armv3m armv4 armv4t armv5 armv5e armv5t armv5te armv6 armv6-m armv6j armv6k armv6s-m armv6t2 armv6z armv6zk armv7 armv7-a armv7-m armv7-r armv7e-m armv7ve armv8-a armv8-a+crc iwmmxt iwmmxt2 native
gfortran: error: unrecognized argument in option ‘-mtune=generic’
gfortran: note: valid arguments to ‘-mtune=’ are: arm1020e arm1020t arm1022e arm1026ej-s arm10e arm10tdmi arm1136j-s arm1136jf-s arm1156t2-s arm1156t2f-s arm1176jz-s arm1176jzf-s arm2 arm250 arm3 arm6 arm60 arm600 arm610 arm620 arm7 arm70 arm700 arm700i arm710 arm7100 arm710c arm710t arm720 arm720t arm740t arm7500 arm7500fe arm7d arm7di arm7dm arm7dmi arm7m arm7tdmi arm7tdmi-s arm8 arm810 arm9 arm920 arm920t arm922t arm926ej-s arm940t arm946e-s arm966e-s arm968e-s arm9e arm9tdmi cortex-a12 cortex-a15 cortex-a15.cortex-a7 cortex-a5 cortex-a53 cortex-a57 cortex-a57.cortex-a53 cortex-a7 cortex-a8 cortex-a9 cortex-m0 cortex-m0.small-multiply cortex-m0plus cortex-m0plus.small-multiply cortex-m1 cortex-m1.small-multiply cortex-m3 cortex-m4 cortex-m7 cortex-r4 cortex-r4f cortex-r5 cortex-r7 ep9312 fa526 fa606te fa626 fa626te fa726te fmp626 generic-armv7-a iwmmxt iwmmxt2 marvell-pj4 mpcore mpcorenovfp native strongarm strongarm110 strongarm1100 strongarm1110 xscale
gfortran: error: unrecognized command line option ‘-msse2’
gfortran: error: unrecognized argument in option ‘-march=x86-64’
gfortran: note: valid arguments to ‘-march=’ are: armv2 armv2a armv3 armv3m armv4 armv4t armv5 armv5e armv5t armv5te armv6 armv6-m armv6j armv6k armv6s-m armv6t2 armv6z armv6zk armv7 armv7-a armv7-m armv7-r armv7e-m armv7ve armv8-a armv8-a+crc iwmmxt iwmmxt2 native
gfortran: error: unrecognized argument in option ‘-mtune=generic’
gfortran: note: valid arguments to ‘-mtune=’ are: arm1020e arm1020t arm1022e arm1026ej-s arm10e arm10tdmi arm1136j-s arm1136jf-s arm1156t2-s arm1156t2f-s arm1176jz-s arm1176jzf-s arm2 arm250 arm3 arm6 arm60 arm600 arm610 arm620 arm7 arm70 arm700 arm700i arm710 arm7100 arm710c arm710t arm720 arm720t arm740t arm7500 arm7500fe arm7d arm7di arm7dm arm7dmi arm7m arm7tdmi arm7tdmi-s arm8 arm810 arm9 arm920 arm920t arm922t arm926ej-s arm940t arm946e-s arm966e-s arm968e-s arm9e arm9tdmi cortex-a12 cortex-a15 cortex-a15.cortex-a7 cortex-a5 cortex-a53 cortex-a57 cortex-a57.cortex-a53 cortex-a7 cortex-a8 cortex-a9 cortex-m0 cortex-m0.small-multiply cortex-m0plus cortex-m0plus.small-multiply cortex-m1 cortex-m1.small-multiply cortex-m3 cortex-m4 cortex-m7 cortex-r4 cortex-r4f cortex-r5 cortex-r7 ep9312 fa526 fa606te fa626 fa626te fa726te fmp626 generic-armv7-a iwmmxt iwmmxt2 marvell-pj4 mpcore mpcorenovfp native strongarm strongarm110 strongarm1100 strongarm1110 xscale
gfortran: error: unrecognized command line option ‘-msse2’
error: Command "/usr/bin/gfortran -Wall -g -ffixed-form -fno-second-underscore -fPIC -O2 -march=x86-64 -DMS_WIN64 -mtune=generic -msse2 -I/home/dgorissen/venvs/orangspy/local/lib/python2.7/site-packages/numpy/core/include -c -c scipy/fftpack/src/dfftpack/dcosti.f -o build/temp.linux-armv7l-2.7/scipy/fftpack/src/dfftpack/dcosti.o" failed with exit status 1
...
Таким образом, очевидно, что пип не правильно поднимает руку. Каков правильный способ установить это?
Замечу, что arm7l (как указано на uname) не указан в качестве опции в трассировке ошибки выше, но попытался это в любом случае выглядит следующим образом:
ARCHFLAGS='-arch arm7l' pip install scipy
Но точно такой же вывод.
Я знаю, что могу apt-get install python-scipy
, но Id скорее сделаю это через pip, поэтому я могу использовать последнюю версию и иметь полный контроль над своей средой (отладка проблемы, когда ubuntu упакованный scipy просто зависает от определенных функций, которые отлично работают на x64)
Редактировать: Пробовал компилировать непосредственно из источника за instructions here, но по-прежнему та же проблема, gfortran не подбирает правую арку.
Это больше похоже на [ServerFault] (http://serverfault.com/) вопрос ко мне. – IgnisErus
Видимо, это прослеживается до нулевой ошибки: https://github.com/numpy/numpy/issues/6495. Обходной путь все еще не ясен для меня. – dgorissen