การติดตั้ง SciPy และ NumPy โดยใช้ pip


157

ฉันกำลังพยายามสร้างห้องสมุดที่ต้องการในแพ็คเกจที่ฉันกำลังแจกจ่าย มันต้องการทั้งห้องสมุดSciPyและNumPy ขณะที่การพัฒนาผมติดตั้งได้ทั้งการใช้

apt-get install scipy

ซึ่งติดตั้ง SciPy 0.9.0 และ NumPy 1.5.1 และทำงานได้ดี

ผมอยากจะทำเช่นเดียวกันโดยใช้pip install- เพื่อสามารถระบุการอ้างอิงใน setup.py ของแพคเกจของตัวเอง

ปัญหาคือเมื่อฉันพยายาม:

pip install 'numpy==1.5.1'

มันใช้งานได้ดี

แต่แล้ว

pip install 'scipy==0.9.0'

ล้มเหลวอย่างน่าสังเวชด้วย

raise self.notfounderror(self.notfounderror.__doc__)

numpy.distutils.system_info.BlasNotFoundError:

Blas (http://www.netlib.org/blas/) libraries not found.

Directories to search for the libraries can be specified in the

numpy/distutils/site.cfg file (section [blas]) or by setting

the BLAS environment variable.

ฉันจะทำให้มันทำงานได้อย่างไร


อืมคุณแน่ใจ pip ทำงานได้ดีกับnumpy=1.5.1แทนnumpy==1.5.1(เท่ากับคู่)?
Hugo Tavares

ฉันใช้เท่ากับคู่ที่ได้รับการพิมพ์ผิด ฉันเพียงแค่พิมพ์ไว้ในที่นี่แทนการวางสำเนา :)
Eran

5
นอกเหนือจากหน่ายและ lapack คุณต้องติดตั้งและblas-devel lapack-develไม่ได้ระบุไว้ในเอกสารนี้ แต่จะต้องทำถ้าคุณต้องการติดตั้งโดยใช้ PIP
IñigoHernáez Corres

@ IñigoHernáezCorres (blas-devel และ lapack-devel) ก็เป็น YUMable ที่ฉันได้เรียนรู้สำหรับพวกเราใน amazon-linux
ทอมมี่

stackoverflow.com/questions/7496547/does-python-scipy-need-blasมีลำดับขั้นตอน 2 ขั้นตอน
mhn

คำตอบ:


34

ฉันกำลังสมมติว่าประสบการณ์ Linux ในคำตอบของฉัน; ฉันพบว่ามีข้อกำหนดเบื้องต้นสามประการที่จะpip install scipyต้องดำเนินการอย่างต่อเนื่อง

ไปที่นี่: การติดตั้ง SciPY

ตามคำแนะนำเพื่อดาวน์โหลด, การสร้างและการส่งออกตัวแปร env สำหรับหน่ายแล้วLAPACK โปรดใช้ความระมัดระวังที่จะไม่ได้เป็นเพียงสุ่มสี่สุ่มห้า cut'n'paste คำสั่งเปลือก - จะมีไม่กี่บรรทัดที่คุณต้องเลือกขึ้นอยู่กับสถาปัตยกรรมของคุณ ฯลฯ และคุณจะต้องแก้ไข / เพิ่มไดเรกทอรีที่ถูกต้องว่ามันไม่ถูกต้องสันนิษฐานว่าเป็น ดี.

สิ่งที่สามที่คุณอาจต้องการคือyum ติดตั้ง numpy-f2pyหรือเทียบเท่า

โอ้ใช่แล้วและสุดท้ายคุณอาจต้องติดตั้ง yum gcc-gfortranเนื่องจากไลบรารีด้านบนเป็นแหล่งของFortran


คำแนะนำที่คุณเชื่อมโยงในการติดตั้ง SciPyถูกลบไปแล้วอาจกำลังลิงก์ที่นี่ตอนนี้scipy.org/scipylib/building/windows.html
jxramos

30
-1; คำตอบนี้ไร้ประโยชน์โดยการแตกลิงค์ เนื้อของคำตอบคือ "ทำตามคำแนะนำ" ที่ลิงค์ แต่หน้ามีการเปลี่ยนแปลงและพวกเขาไม่ได้มี นอกจากนี้ผู้ถามได้โดยใช้ระบบปฏิบัติการที่มีapt-getฐานะผู้จัดการแพคเกจของมัน yumแต่คำตอบนี้ใช้ ไม่มีอะไรผิดปกติกับการให้คำตอบที่ครอบคลุมแพลตฟอร์มเพิ่มเติม แต่ควรมีป้ายบอกทางเช่น สิ่งนี้จะทำให้เกิดความสับสนกับ Unix noobs อย่างไม่จำเป็น
มาร์ค Amery

5
การติดตั้งหน่ายและ LAPACK ที่คุณต้องทำงานyum install lapack-devel.x86_64 blas-devel.x86_64
แม็กซ์ L

331

สิ่งนี้ใช้ได้กับฉันใน Ubuntu 14.04:

sudo apt-get install libblas-dev liblapack-dev libatlas-base-dev gfortran
pip install scipy

4
การติดตั้งlibblas-dev liblapack-devการแก้ไขblasแต่แล้วผมerror: library dfftpack has Fortran sources but no Fortran compiler foundดังนั้นผมจำเป็นต้องมีสิ่งเหล่านี้เพื่อให้สามารถติดตั้ง SciPy ขอบคุณ.
naoko

6
ฉันเพียงแค่ติดตั้งlibblas-dev liblapack-dev gfortranก็ทำงานสำหรับฉันใน Ubuntu14.04
จิน

libblas เป็นเหตุผลที่มีข้อผิดพลาด - ไม่พบแหล่งข้อมูล lapack /
blas

1
สาธุสำหรับคำตอบที่ไม่ยอมรับซึ่งทำงานได้ดีกว่าคำตอบที่ยอมรับได้
เฟลิ Almeida

สำหรับ yum: yum ติดตั้ง blas-devel lapack-devel atlas-devel gcc-gfortran
Alec McGail

76

คุณต้องใช้แพ็คเกจ libblas และ liblapack dev หากคุณใช้งาน Ubuntu

aptitude install libblas-dev liblapack-dev
pip install scipy

13

เนื่องจากคำแนะนำก่อนหน้าสำหรับการติดตั้งกับ yum แตกนี่คือคำแนะนำที่ได้รับการอัปเดตสำหรับการติดตั้งบนบางสิ่งเช่น fedora ฉันเคยทดสอบสิ่งนี้ใน "Amazon Linux AMI 2016.03"

sudo yum install atlas-devel lapack-devel blas-devel libgfortran
pip install scipy

6

ฉันกำลังทำงานในโครงการที่ขึ้นอยู่กับจำนวนและสกิปซี่ ในการติดตั้ง Fedora 23 โดยใช้สภาพแวดล้อมเสมือนหลามหลาม 3.4 (ยังทำงานหลาม 2.7) และมีดังต่อไปนี้ใน setup.py ของฉัน (ในsetup()วิธีการ)

setup_requires=[
    'numpy',
],
install_requires=[
    'numpy',
    'scipy',
],

ฉันพบว่าฉันต้องเรียกใช้สิ่งต่อไปนี้เพื่อpip install -e .ไปทำงาน:

pip install --upgrade pip

และ

sudo dnf install atlas-devel gcc-{c++,gfortran} subversion redhat-rpm-config

redhat-rpm-configสำหรับใช้ SciPy ของredhat-hardened-cc1เมื่อเทียบกับปกติcc1



2

นี่คือระบบปฏิบัติการอะไร คำตอบอาจขึ้นอยู่กับระบบปฏิบัติการที่เกี่ยวข้อง แต่ก็ดูเหมือนว่าคุณจะต้องพบนี้หน่ายห้องสมุดและติดตั้ง ดูเหมือนจะไม่ได้อยู่ใน PIP (คุณจะต้องดำเนินการด้วยตนเอง) แต่ถ้าคุณติดตั้งมันควรให้คุณดำเนินการติดตั้ง SciPy ของคุณ


มันเป็นอูบุนตู 11.10 ฉันพยายามนั่นเป็นปัญหาของฉันอย่างแน่นอน ห้องสมุดคืออะไรและฉันจะได้รับมันได้อย่างไร
eran

25
บน Ubuntu คุณสามารถทำเช่นsudo apt-get install liblapack-dev libatlas-devบวกอาจจะยังpython-dev gfortranถ้าคุณจะหายไปพวกเขา
pv

2
ฉันไม่ได้โพสต์นั้น! ห่า?
Shayne

0

ในกรณีของฉันการอัพเกรด pip ทำให้เคล็ดลับ นอกจากนี้ฉันได้ติดตั้ง scipy พร้อมพารามิเตอร์ -U (อัปเกรดแพ็กเกจทั้งหมดเป็นเวอร์ชันล่าสุดที่มี)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.