Tôi đang cố gắng để thiết lập OpenCV 2.4 như sau:Làm thế nào để sử dụng các thư viện tĩnh OpenCV 2.4 với Visual Studio?
- Tôi đã tải về và giải nén gói biên dịch sẵn để
C:\OpenCV240
. - Trong Visual Studio, tôi đã thêm
C:\OpenCV240\build\include
làm thư mục bao gồm bổ sung. - Hơn nữa, tôi đã thêm
C:\OpenCV240\build\x86\vc10\staticlib
làm thư mục bổ sung cho thư viện. - Và tôi đã chỉ định tất cả các tệp .lib có sẵn làm phụ thuộc bổ sung.
Khi tôi biên dịch chương trình "Hello World" của tôi (mà chỉ cần biên dịch tốt khi sử dụng DLL), tôi nhận được một thông báo lỗi rất nhiều như thế này:
1> msvcprtd.lib (MSVCP100D.dll): LNK2005 lỗi: "công cộng: __thiscall std :: _ Container_base12 :: ~ _Container_base12 (void)" (?? 1_Container_base12 @ std @@ QAE @ XZ) đã được xác định trong opencv_core240d.lib (matrix.obj)
Tôi đang làm gì sai?
Điều này có tác dụng phụ hay không? – Niko
Thật an toàn để làm điều này, trên thực tế bạn * cần * để có tất cả các thư viện được liên kết với nhau bằng cùng một phiên bản của CRT. Tuy nhiên quyết định về việc liệu bạn có muốn sử dụng các thư viện tĩnh và động không phải lúc nào cũng dễ dàng. – Fraser