簡體   English   中英

通過pip安裝scikit-bio時,#error“SSE2指令集未啟用”

[英]#error “SSE2 instruction set not enabled” when installing scikit-bio via pip

我想使用以下命令通過pip安裝python庫scikit-bio:

sudo pip install scikit-bio

在我的系統上:

uname -a
Linux grassgis 3.2.0-69-generic-pae #103-Ubuntu SMP Tue Sep 2 05:15:53 UTC 2014 i686 i686 i386 GNU/Linux

但是這會導致錯誤:

gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/lib/python2.7/dist-packages/numpy/core/include -I/usr/include/python2.7 -c skbio/alignment/_ssw/_ssw_wrapper.c -o build/temp.linux-i686-2.7/skbio/alignment/_ssw/_ssw_wrapper.o
    In file included from skbio/alignment/_ssw/ssw.h:17:0,
                     from skbio/alignment/_ssw/_ssw_wrapper.c:355:
    /usr/lib/gcc/i686-linux-gnu/4.6/include/emmintrin.h:32:3: error: #error "SSE2 instruction set not enabled"
    /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/__multiarray_api.h:1532:1: warning: ‘_import_array’ defined but not used [-Wunused-function]
    /usr/lib/python2.7/dist-packages/numpy/core/include/numpy/__ufunc_api.h:226:1: warning: ‘_import_umath’ defined but not used [-Wunused-function]
    error: command 'gcc' failed with exit status 1

我已經運行了sudo apt-get updatesudo apt-get upgrade來獲取已安裝軟件的最新版本。

我的GCC版本是:

gcc --version
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3

如何成功安裝python的scikit-bio軟件包?

先前 scikit-bio問題跟蹤器上的i686機器用戶報告此問題。 編譯SSW時出錯,這是一個隨scikit-bio一起提供的外部C程序。 SSW的作者建議將-msse2傳遞給編譯器以解決問題。

修復程序被合並到scikit-bio的開發分支中,以包含i686計算機的這個標志。

如果要安裝scikit-bio的發行版,可以在命令行上通過CFLAGS指定此標志:

CFLAGS=-msse2 pip install scikit-bio

要么:

sudo CFLAGS=-msse2 pip install scikit-bio

或者,可以修改scikit-bio的setup.py文件以在SSW的extra_compile_args包含'-msse2'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM