Trong ứng dụng của chúng tôi, chúng tôi sử dụng một số thư viện được liên kết động. Gần đây, chúng tôi đã cập nhật phiên bản của một trong các thư viện này. Các nhà phát triển của thư viện đó đang cung cấp một phương pháp chính kể từ phiên bản mới này (Làm gì hơn là in Hello World).Cách bỏ qua phương thức chính từ thư viện liên kết động trong C++
Vấn đề là chúng tôi đang sử dụng GTest và GMock, tạo ra phương pháp chính của riêng họ. Khi chúng ta chạy nhị phân thử nghiệm của mình, chúng ta chỉ nhận được "Hello World", do đó, phương thức chính sai được thực hiện.
Làm cách nào chúng tôi có thể buộc phương pháp chính của các thử nghiệm được sử dụng?
CẬP NHẬT: Điều này có vẻ là vấn đề GMock/GTest. Phương pháp chính thường được tạo ra, nhưng đây không phải là trường hợp vì nó tìm thấy một phương thức chính đã tồn tại ngay bây giờ.
Tôi hoàn toàn đồng ý với tuyên bố của bạn. Sẽ thật khủng khiếp khi khiến các nhà phát triển từ lib đó thay đổi nó. Tôi đã hy vọng cho một mẹo nhanh chóng và bẩn để "bỏ qua" phương pháp chính đó. –
@ W.Goeman Nếu nó là một thư viện nguồn mở, thì bạn có thể tự mình làm điều đó, phải không? Nếu nó là một thư viện thương mại, thì họ nên làm điều đó. Trong mọi trường hợp, nó là một vấn đề nghiêm trọng cho một thư viện được chia sẻ để xác định chính(). –
, chúng tôi đã liên lạc với các nhà phát triển từ thư viện đó và họ hứa sẽ sửa chữa. Một phương pháp chính trong thư viện có vẻ là một vấn đề nghiêm trọng thực sự :) –