Sự khác biệt giữa libcurl3 và libcurl4 là gì


11

Tôi đã thiết lập môi trường phát triển Ubuntu 14.04 và đã cài đặt libcurl nhưng nhận thấy rằng có hai phiên bản khác nhau trong bộ nhớ năng khiếu của tôi. Sự khác biệt chính giữa các phiên bản và mọi người khuyên dùng cho các dự án Django là gì?

Tôi cho rằng libcurl4 mới hơn và có thể tốt hơn, nhưng tôi lo lắng rằng nó có thể phá vỡ khả năng tương thích với các sản phẩm khác, hoạt động lạ với các loại dầu rắn hoặc khiến tôi đau đầu trong tương lai.

Có bất kỳ vấn đề lớn nào mà tôi nên biết với libcurl4 không? Cảm ơn.

Câu trả lời:


9

Nếu bạn nhìn kỹ bạn sẽ thấy, mà thực sự chỉ -dbg, -dev-docgói chứa một phiên bản 4 trong tên gói của họ, trong khi các gói mà tàu thư viện libcurl biên soạn thực tế vẫn đang ở phiên bản 3.

Để thảo luận về Debian về điều này, hãy xem liên kết này: https://lists.debian.org/debian-release 2007/04 / msg00257.html

Nếu tôi hiểu đúng, đã có một sự thay đổi trong API nhưng không phải là ABI, vì vậy các gói nhị phân được để lại ở phiên bản 3, trong khi các tệp phát triển cần một phiên bản.

Điều đó cũng có nghĩa là ví dụ libcurl4-openssl-devlà gói phát triển tương ứng libcurl3mặc dù có phiên bản khác nhau trong tên gói. Bạn có thể thấy rằng nếu bạn xem libcurl3-dev(đó là một gói ảo và trỏ đến libcurl4-openssl-dev:

No current or candidate version found for libcurl3-dev
Package: libcurl3-dev
State: not a real package
Provided by: libcurl4-openssl-dev (7.47.0-1ubuntu2), 
    libcurl4-openssl-dev (7.47.0-1ubuntu2.2)

Đoạn mã trên được chụp trên Ubuntu 16.04 nhưng điều này có thể sẽ trông tương tự vào ngày 14.04.


4

Bạn có thể tự đọc thay đổi của các gói liên quan, thông qua:

for i in $(dpkg -l libcurl\* | grep libcurl  | awk '{print $2}'); do
  apt-get changelog $i >$i.changelog
done

Sau đó đọc các *.changelogtập tin.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.