เมื่อฉันพยายามติดตั้ง libcurl4-dev มันบอกว่านี่เป็นแพ็คเกจเสมือนและฉันต้องติดตั้ง libcurl4-gnutls-dev หรือ libcurl4-nss-dev ความแตกต่างระหว่างการติดตั้งอย่างใดอย่างหนึ่งคืออะไร?
ทั้งสองมีฟังก์ชันการทำงานเดียวกันโดยใช้ไลบรารีที่แตกต่างกัน
พื้นหลัง:
cURLรองรับการใช้Transport Layer Security (TLS, aka SSL) สำหรับการถ่ายโอนข้อมูล เนื่องจากการใช้ TLS นั้นค่อนข้างยุ่งยาก cURL จึงมอบหมายสิ่งนี้ให้กับห้องสมุดภายนอก cURL สนับสนุนห้องสมุดที่แตกต่างกันหลายอย่างเพื่อจุดประสงค์นี้และคุณต้องเลือกหนึ่งอันเมื่อสร้างมัน (ดูวิธีการติดตั้ง curl และ libcurlส่วน "เลือกแบ็กเอนด์ TLS") ตัวเลือกยอดนิยมที่ใช้เป็นไลบรารี TLS คือ:
สิ่งที่คุณเลือกขึ้นอยู่กับปัจจัยหลายประการ (การออกใบอนุญาตประสิทธิภาพการทำงานชุดคุณสมบัติที่แน่นอนเช่นอัลกอริทึมเข้ารหัสลับที่สนับสนุน ... ) แต่ส่วนใหญ่จะให้ฟังก์ชันการทำงานเดียวกัน
Ubuntu ต้องการอนุญาตให้ผู้ใช้เลือก cURL ที่ต้องการใช้ดังนั้นพวกเขาจึงสร้าง cURL ในไลบรารี TLS ที่แตกต่างกันอีกครั้งและเสนอเป็นแพ็คเกจแยกต่างหาก ในฐานะของ Ubuntu bionic (18.04LTS) รูปแบบต่างๆ ได้แก่ :
- libcurl4-gnutls-dev
- libcurl4-NSS-dev
- libcurl4-OpenSSL-dev
ดังนั้นให้ติดตั้งชุดตัวเลือกที่เหมาะสมสำหรับไลบรารี TLS ที่คุณต้องการใช้ หากคุณไม่มีการตั้งค่าใดเป็นพิเศษให้ติดตั้งชุดตัวเลือกเริ่มต้น (ซึ่งใช้ OpenSSL)