2012-05-18 44 views
5

Theo ABI Policy and Guidelines là nó đúng tôi nên sử dụnggcc và libstdC++ về phía trước khả năng tương thích

GCC 3.4.0 and libstdc++.so.6.0.0 

để biên dịch thực thi nhị phân Runnable trên mỗi GNU/Linux phân phối (cùng kiến ​​trúc CPU) với bất kỳ phiên bản mới hơn libstd++.so.6 cài đặt không? Liệu nhị phân này có tương thích với mỗi libstd++.so.6 không?

+4

gcc 3.4.0 là công cụ khá cũ ..... – littleadv

Trả lời

5

(Tại sao không hỏi câu hỏi này trên mailing list gcc-giúp đỡ để bạn có được một câu trả lời có thẩm quyền từ những người biết những gì họ đang nói về?)

Vâng, liên kết chống lại libstdC++ so.6.0.0. có nghĩa là nhị phân có thể chạy khi được liên kết với bất kỳ phiên bản libstdC++ nào sau đó, nhưng điều đó không đủ để đảm bảo nhị phân có thể chạy trên bất kỳ hệ thống GNU/Linux nào. Bạn cũng cần đảm bảo bạn sử dụng phiên bản cũ hơn của libc.so (i.e.glibc) và bất kỳ libs nào khác mà bạn liên kết. Biên dịch và liên kết với GCC 3.4.0 nhưng liên kết với Glibc 2.15 có thể có nghĩa là hệ nhị phân của bạn không thể chạy trên các hệ thống với Glibc 2.14 hoặc cũ hơn, bất kể phiên bản libstdC++ của chúng là gì.

Các vấn đề liên quan