簡體   English   中英

sudo pip3 install numpy不尊重〜/ .numpy-site.cfg

[英]sudo pip3 install numpy does not respect ~/.numpy-site.cfg

我正在嘗試使用pip3在python3上安裝numpy和scipy。 我想使用MKL,所以我在~/.numpy-site.cfg指定了很多(如此此處所建議):

[mkl]
library_dirs = /opt/intel/mkl/lib/intel64
include_dirs = /opt/intel/mkl/include
mkl_libs = mkl_rt
lapack_libs =
extra_compile_args = -march=native

然后我通過成功安裝numpy

$ sudo pip3 install numpy

但是,MKL不會顯示在配置中!

>>> np.show_config()
...
mkl_info:
  NOT AVAILABLE
...

隨后安裝scipy失敗(如預期)

numpy.distutils.system_info.NotFoundError: no lapack/blas resources found

然而,當我安裝numpy的和SciPy的在同一台機器上的virtualenv沒有其他任何更改,MKL 發現,並SciPy的正常工作。

我的第一個猜測是sudo沒有選擇$HOME ,但是sudo echo $HOME正確返回了我的主目錄。

可能出什么問題了?

事實證明,我的猜測確實是正確的。 sudo 沒有使用正確的$HOME sudo echo $HOME之所以有效,是因為bash在調用sudo運行命令之前先擴展了$HOME

以下測試可以解決問題:

# In test.sh
echo "$HOME"

現在我明白了

$ sudo bash test.sh
/root

確認$HOME不正確。 事實證明,已經在/ etc / sudoers中設置了一堆設置(always_set_home和env_reset),這意味着sudo -E bash test.sh也無效。

我終於剛安裝了

$ sudo HOME=/path/to/my/home pip3 install numpy

起作用了。

暫無
暫無

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

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