我構建opencv 233作爲靜態庫,但是當我在應用程序中使用它時,它在調用cv :: imwrite()時提供鏈接錯誤,即tiff,png,jasp庫沒有鏈接。這是否意味着我應該將這些我的自我鏈接到我的應用程序中,或者我是否構建了它。Opencv靜態構建,JPEG,PNG,TIFF不靜態鏈接?
我希望3party庫是靜態包含在opencv_highgui.lib中,而不必在我的應用程序中自己鏈接它們。
我構建opencv 233作爲靜態庫,但是當我在應用程序中使用它時,它在調用cv :: imwrite()時提供鏈接錯誤,即tiff,png,jasp庫沒有鏈接。這是否意味着我應該將這些我的自我鏈接到我的應用程序中,或者我是否構建了它。Opencv靜態構建,JPEG,PNG,TIFF不靜態鏈接?
我希望3party庫是靜態包含在opencv_highgui.lib中,而不必在我的應用程序中自己鏈接它們。
在該解決方案中,如果爲visual studio 2010配置,則第三方庫未設置爲鏈接。將high庫項目的鏈接庫依賴項更改爲true。
在cmake的,請確保您有BUILD_3RDPARTY,或不管它被調用,檢查。然後OpenCV將從它自己的樹中建立lib依賴關係並靜態鏈接到highgui。這是Windows的默認設置。
我沒有看到任何BUILD_3RDPARTY,只有WITH_JPPEG,WITH_PNG,我已經檢查過這些。 – 2012-04-01 16:43:29
另外,在解決方案中,所有第三方庫都是正確構建的,但它們只位於它們自己的文件夾中。 – 2012-04-01 16:45:29
該變量稱爲OPENCV_BUILD_3RDPARTY_LIBS。在CMake中使用搜索框並不難,是嗎? – ypnos 2012-04-01 20:07:29
嗯,我想這是因爲您的CMake配置錯了,但如果不是,您可能希望通過提交錯誤報告來幫助OpenCV。 +1回答你自己的問題。 – ypnos 2012-04-01 20:08:08
也許我把它設置成了委屈,但我很難搞清楚設置了哪個標誌。 (包括我的設置轉儲) – 2012-04-01 21:34:50
感謝發佈。看來你偶然發現了一個OpenCV編譯系統的bug,因爲你必須手工更改解決方案。 – ypnos 2012-04-01 23:58:43