libssl.so.10: ไม่สามารถเปิดไฟล์วัตถุที่ใช้ร่วมกัน: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว


44

ฉันกำลังพยายามใช้ twoBitToFa ซึ่งเป็นโปรแกรมขนาดเล็กที่ออกโดย University of California Santa Cruz ซึ่งไม่มีการบีบอัดไฟล์จีโนมขนาดใหญ่และฉันได้รับข้อผิดพลาดนี้:

error while loading shared libraries: libssl.so.10: cannot open shared object file: No     such file or directory

ฉันลองค้นหาแพ็คเกจที่ให้มา ฉันเปลี่ยนจาก Fedora ซึ่งมีyum providesแต่เมื่อมองหาเทียบเท่า Ubuntu ฉันเจอapt-file searchแต่เมื่อฉันพยายามที่ฉันได้รับคำสั่งไม่พบข้อผิดพลาด

ฉันจะรับไฟล์ libssl นี้ได้อย่างไรและโดยทั่วไปฉันจะค้นหาแพ็คเกจที่ให้ไฟล์ได้อย่างไรเพื่อที่ฉันจะสามารถทำสิ่งนี้ได้ด้วยตัวเองในอนาคต


คุณต้องติดตั้งapt-fileด้วยsudo apt-get install apt-fileและจากนั้นคุณจำเป็นต้องเรียกใช้sudo apt-get updateและและsudo apt-get install apt-file sudo apt-file update
mchid

คำตอบ:


51

ให้แน่ใจว่าคุณได้ติดตั้งและอัปเดต SSL แล้ว:

sudo apt-get update
sudo apt-get install libssl1.0.0 libssl-dev

ตอนนี้ให้แก้ไขการตั้งชื่อไฟล์โดยสร้างลิงค์:

cd /lib/x86_64-linux-gnu
sudo ln -s libssl.so.1.0.0 libssl.so.10
sudo ln -s libcrypto.so.1.0.0 libcrypto.so.10

และสุดท้ายให้แจ้งผู้พัฒนาเกี่ยวกับข้อบกพร่องนี้เพื่อเขาสามารถแก้ไขได้ :)


3
ในกรณีของฉัน (bedToBigBed จาก UCSC) ฉันยังต้องเรียกใช้คำสั่งที่คล้ายกันสำหรับ "libcrypto" นอกเหนือจากคำตอบข้างต้น: sudo ln -s /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 / usr / lib / libcrypto.so.10
2821352

2
ในกรณีของฉันฉันต้องการreinstallแพ็คเกจ sudo apt-get install libssl1.0.0 libssl-dev --reinstall
Edward Wilde

ขอบคุณ @EdwardWilde reinstallดูเหมือนจะง่ายที่สุด! sudo apt-get install libssl1.0.0 libssl-dev --reinstall
Stéphane Bruckert

หลังจากคำสั่ง apt-get ฉันยังไม่เห็นไฟล์ libssl * ใน / lib / x86_64-linux-gnu (Ubuntu 18)
MiloDC

2
ใน 18.04, ไลบรารีถูกติดตั้งบน / usr / lib / x86_64-linux-gnu
Sa'ad

10

ดูเหมือนว่า Mongo กำลังรอไฟล์ libssl อยู่/usr/lib/:

  sudo ln -s /lib/x86_64-linux-gnu/libssl.so.1.0.0 /usr/lib/libssl.so.10
  sudo ln -s /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /usr/lib/libcrypto.so.10

# ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/libssl.so.1.1 # ln -s /usr/local/lib/libcrypto.so.1.1 /usr/lib/libcrypto.so .1.1
waza123

2 เหล่านี้เหมือนกันหรือไม่ พวกเขาดูเหมือนจะเป็นรุ่นที่แตกต่างกัน
Yixing Liu

8

ฉันเป็นหนึ่งในผู้พัฒนาเครื่องมือเหล่านี้ ไบนารีของเราไม่รองรับ Ubuntu อย่างเป็นทางการ วิธีที่เป็นทางการในการแก้ไขปัญหานี้คือการคอมไพล์ใหม่จากแหล่งซึ่งเพิ่งได้ง่ายมาก (ดูhttps://github.com/NullModel/kentUtils ) ขณะนี้เรากำลังพยายามสร้างไบนารีแบบคงที่โดยไม่ต้องพึ่งพา libssl


มีลิงค์ใหม่หรือไม่? ลิงก์ข้างต้นบอกว่าตอนนี้ล้าสมัยแล้ว
Ryuu

6

ในกรณีของฉันฉันใช้โปรแกรมที่รวบรวมสำหรับ Red Hat Enterprise Linux บนเครื่อง Ubuntu ของฉัน การใช้รุ่น Ubuntu เพียงช่วยแก้ปัญหา

สิ่งนี้คล้ายกับการขาดการสนับสนุนสำหรับ Ubuntu ที่ Max อธิบาย


กันที่นี่ ไม่แน่ใจว่านี่เป็นเหตุผลหลัก แต่อาจเป็นได้ Fyi - ซอฟต์แวร์คือ RoyalRender
bossi

ใช่ในกรณีของฉันฉันดาวน์โหลด mongo tar.gzไม่ใช่ Ubuntu (Linux อื่น) เมื่อดาวน์โหลด Mongo ดูรายการดรอปดาวน์ในเว็บไซต์ Mongo และเลือก ubuntu
Maxim Yefremov

1
เหมือนกันที่นี่ ... ใหม่สำหรับ Ubuntu ... คำตอบนี้ช่วยฉันหลังจากใช้เวลาประมาณ 45 นาทีในการ googling และการทดลอง
CodeBurner

กันที่นี่ 1คนอื่นจัดการเพื่อให้มันทำงานได้อย่างไร บางทีพวกเขาอาจพลาดการอ้างอิง "Ubuntu" ใน OP หรือไม่ 2ทำไม distro ถึงสำคัญ? มันไม่ได้ถูกคอมไพล์กับสถาปัตยกรรมเดียวกันหรือไม่?
Ryuu

0

ฉันมี symlink ของฉันเสียหายเมื่อติดตั้ง OpenSSL เวอร์ชันใหม่ เพื่อแก้ไขสถานการณ์นี้ฉันแก้ไข symlink ของฉันใน / usr / lib64 เช่นsudo ln -sf libssl.so.0.9.8e libssl.so.10


0

เกี่ยวกับไฟล์ apt ก่อนอื่นคุณต้องติดตั้ง

sudo apt install apt-file

และอัปเดตแคช

sudo apt-file update

จากนั้นการค้นหาไฟล์ apt-file ควรใช้งานได้

เกี่ยวกับการติดตั้งแพ็คเกจฉันคิดว่าคุณไม่จำเป็นต้องใช้ libssl-dev คุณต้องการเพียง libssl1.0.0 - นี่คือไลบรารีรันไทม์ ประการที่สองคือการพัฒนา

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