“ ข้อผิดพลาดร้ายแรง: openssl / opensslv.h: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว” รวบรวม mitmproxy


52

ฉันพยายามติดตั้งแพ็กเกจ mitmproxy ผ่าน pip เช่นนี้:

$ sudo pip install mitmproxy

มันจบลงด้วยข้อความแสดงข้อผิดพลาดดังต่อไปนี้:

x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c build/temp.linux-x86_64-2.7/_openssl.c -o build/temp.linux-x86_64-2.7/build/temp.linux-x86_64-2.7/_openssl.o

build/temp.linux-x86_64-2.7/_openssl.c:391:30: fatal error: openssl/opensslv.h: No such file or directory

compilation terminated.

error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

----------------------------------------
  Can't roll back cryptography; was not uninstalled
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-jvLTVf/cryptography/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-DrY4DI-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip-build-jvLTVf/cryptography
Storing debug log for failure in /home/niklas/.pip/pip.log

หลังจากนี้จะติดตั้งค่อนข้างน้อยฉันสามารถถอนการติดตั้งในภายหลัง

 $ mitmproxy

นำไปสู่

Traceback (most recent call last):
  File "/usr/local/bin/mitmproxy", line 7, in <module>
    from mitmproxy.main import mitmproxy
  File "/usr/local/lib/python2.7/dist-packages/mitmproxy/main.py", line 7, in <module>
    from . import version, cmdline
  File "/usr/local/lib/python2.7/dist-packages/mitmproxy/cmdline.py", line 6, in <module>
    import configargparse
ImportError: No module named configargparse

meta.askubuntu.com/questions/15739/… : ฉันขอแนะนำให้อัปเดตเป็น 16.04
anonymous2

คำตอบ:


79

คำตอบอื่น ๆ ที่อยู่เพียงการอ้างอิงเพื่อให้ข้อผิดพลาดที่คุณกล่าวถึงหายไป รายการของการอ้างอิงทั้งหมดที่จำเป็นต้องใช้จริงอีกต่อไปมาก

คุณสามารถติดตั้งได้ทั้งหมดด้วย:

sudo apt-get install python-pip python-dev libffi-dev libssl-dev libxml2-dev libxslt1-dev libjpeg8-dev zlib1g-dev

จากนั้นคุณสามารถติดตั้งmitmproxy:

sudo pip install mitmproxy

และเรียกใช้:

mitmproxy

ที่มา: เอกสารประกอบ


1
ทำงานได้ แต่ก็ฆ่า pip ได้ ต้องติดตั้งใหม่ ตอนนี้ทุกอย่างทำงานได้ :)
Niklas

1
@ Niklas ฉันดีใจที่ได้ยินว่ามันแก้ไขปัญหาของคุณ ขอให้มีความสุขมาก ๆ ในวันนี้!
grooveplex

66
»» fatal error: openssl/opensslv.h: No such file or directory ««

ติดตั้ง openssl: sudo apt-get update && sudo apt-get install libssl-dev


ฉันได้รับข้อผิดพลาดเดียวกันระหว่างการตั้งค่า pyOpenSSL ใน Ubuntu 16.04 (ใน python virtualenv) คำตอบนี้แก้ปัญหาของฉันได้ ขอบคุณ
yucer

แก้ไขปัญหาเมื่อติดตั้ง "pip install fabric" บนเซิร์ฟเวอร์ Ubuntu (ยืดขยาย / ขยายหรือ Ubuntu 16.04.1 LTS)
Sergei G

1
นี่คือคำตอบที่สะอาดง่ายสำหรับอะไรที่อาศัยpypi.python.org/pypi/cryptography/1.8.1เช่นpypi.python.org/pypi/paramiko/2.1.2
บรูโน่ Bronosky

1
บันทึกข้อผิดพลาดขณะติดตั้ง hashpumpy
NonStandardModel

ผมมีปัญหาที่คล้ายกันพยายามที่จะติดตั้งkeyringบนalpineแต่มีเมื่อพยายามที่จะติดตั้งERROR: unsatisfiable constraints libssl-devก็สามารถที่จะแก้ไขได้ด้วยการติดตั้งopenssl-devแทน
ประสานงาน

4

ที่จริงแล้วมีสองประเด็นที่แตกต่างกันในผลลัพธ์ของคุณ (สมมติว่าปัญหาการพึ่งพาอื่น ๆ ทั้งหมดได้รับการแก้ไขแล้ว) ทั้งสองต้องแก้ไข

ไม่มีไลบรารี SSL

  1. ตามที่ได้ระบุไว้โดยKnud เสนในของพวกเขาตอบคำถามนี้ , คุณจะหายไปห้องสมุด OpenSSL อ้างถึงคำตอบของพวกเขาสำหรับคำถามนี้สำหรับปัญหานั้น

โมดูล Python หายไป

  1. มีสคริปต์ไพ ธ อนที่เป็นส่วนหนึ่งของทุกสิ่งที่คุณกำลังใช้งานและไม่มีโมดูล (เรียกว่าconfigargparse) ที่จำเป็นต้องเรียกใช้

    ถ้าคุณอยู่ในUbuntu 15.10 หรือใหม่กว่าsudo apt-get install python-configargparseคุณสามารถติดตั้งได้ด้วยการทำ

    หากคุณอยู่ในUbuntu ทุกรุ่นก่อนเวลา 15.10คุณจะต้องติดตั้งผ่านpipเพื่อดาวน์โหลดและทำให้ระบบพร้อมใช้งาน:sudo pip install configargparse

    (โปรดทราบว่าpython pip install mitmproxyจะได้รับการแก้ปัญหาการพึ่งพาประเภทเดียวกันเมื่อคุณแก้ไขปัญหาไลบรารี SSL ที่หายไปอย่างไรก็ตามหากไม่ได้ด้วยเหตุผลบางประการคุณจะต้องติดตั้งโมดูลด้วยตนเอง)

หมายเหตุ: คำถามของคุณระบุว่าคุณกำลังใช้ Ubuntu MATE 15.10 Ubuntu 15.10 สำหรับตัวแปรทั้งหมดได้ สิ้นสุดลงEndOfLifeเมื่อวันที่ 28 กรกฎาคม 2559 คุณควรพิจารณาอัปเกรดเป็น 16.04 เพื่อรับการสนับสนุนและการอัปเดตของ Ubuntu ต่อไป

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