Ứng dụng My (C++, đa nền tảng) sử dụng nhiều thư viện Boost
(nói phiên bản 1.x
) và tôi cũng muốn liên kết với SDK của bên thứ ba (nhà cung cấp) (không có nguồn), sử dụng Boost
(nhưng phiên bản) 1.y
).Có thể nhiều phiên bản của cùng một (Boost) DLL cùng tồn tại trong cùng một quá trình không?
Vì vậy, cả hai chúng tôi liên kết động với phiên bản Boost
DLL của riêng chúng tôi, CRT giống hệt nhau. Do đó, vào thời gian chạy, ứng dụng của tôi sẽ phải tải cả hai tệp DLL Boost 1.x & 1.y
.
Các vấn đề tiềm năng & gotchas có liên quan gì?
Tôi không thể thay đổi SDK của nhà cung cấp, nhưng tôi có thể thay đổi ứng dụng của mình. Có lẽ tôi nên cố gắng liên kết tĩnh với Boost 1.x
của tôi?
PS: Tên của Boost
của DLL bao gồm phiên bản của chúng, vì vậy không có xung đột tên, cả hai đều có thể nhận dạng được. Không phải là DLL thông thường.