天天看點

CMake編譯OpenCV時出現“No CMAKE_C_COMPILER could be found”問題的解決方法

cmake版本:3.7.0

VS版本:VS2015企業版

opencv版本:3.4.1

自己用cmake編譯VS的工程檔案時,總是出現“No CMAKE_C_COMPILER could be found”的問題,在網上找了很久,依然無法解決。

由于時間原因,選擇了放棄,從網上下載下傳了編譯好的庫檔案使用。

用了一段時間發現,因為沒有VS的工程檔案,出現問題不能跟進到源碼裡,隻能尋求自己編譯。

經過不斷的試驗、搜尋,總結一下,網上提到的最多的是第1種解決方法,也是最簡單的,但是第2種鮮有人提到,需要用第2種解決方法的人,恭喜你,你在很早以前就給自己挖了個坑。第3種方法才是最徹底滴。

解決方法一:選對編譯器版本

VS2015對應的是Visual Studio 14,VS2017對應的是Visual Studio 15

選擇File->Delete Cache後,重新Configure。

一般都能成功

解決方法二:安裝Windows SDK

在安裝VS的時候沒有勾選Windows sdk,也有可能出現這個問題。

如果VS已安裝好了,可以用在添加删除程式裡對VS重新添加該元件

解決方法三:重新安裝VS

如果以上方法都行不通,那麼隻好重新安裝VS啦。

解除安裝VS比較麻煩,一般解除安裝不幹淨。

找了好多方法,這個親測比較靠譜:首先在控制台裡解除安裝VS,然後用一款叫TotalUninstaller的工具清理VS的殘餘,注意一定要以管理者的身份運作TotalUninstaller工具,最後再重新安裝VS。

說句老實話,我是用第3種方法才解決這個問題的^_^。

繼續閱讀