前言
有的小伙伴仍然在使用mingw編譯器,這時只能重新編譯opencl的sdk庫。本文檔簡單記錄下win10下,使用mingw11.20編譯的過程,有需要的小伙伴可以參考下
一、安裝所需軟件
1.安裝git,教程比較多,不再重復
2.安裝cmake,教程比較多,不再重復
3.安裝mingw編譯器
筆者偷懶了,直接使用Qt安裝時,下載的編譯器
二、獲取源碼
項目地址:GitHub - KhronosGroup/OpenCL-SDK: OpenCL SDK
可以直接使用git命令拉取:
git clone --recursive https://github.com/KhronosGroup/OpenCL-SDK.git或者git clone https://github.com/KhronosGroup/OpenCL-SDK.git
cd OpenCL-SDK
git submodule init
git submodule update
?下載過程可能比較長,需要下載幾個子模塊
若中間失敗了,需要繼續執行更新
?注:建議使用科學的上網方式,否則可能下載比較慢
三、設置環境變量
環境變量設置方法很多,可以直接設置系統的環境變量,筆者使用的是在一個cmd窗口中臨時設置環境變量
執行如下命令
set path=D:\Qt\Tools\mingw1120_64\bin;D:\Program Files\Git\usr\bin;%path%
若是查看環境變量執行如下
echo %path%
然后在終端中,直接運行D:\Qt\Tools\CMake_64\bin\cmake-gui.exe
四、編譯源碼
使用cmake設置,點擊Configure按鈕
第一次設置時,需要下載缺少的其他工程源碼,過程可能比較長
設置參數根據需求,修改下。筆者使用默認參數設置時,要報錯,就在cmake中取消了glew的動態庫選項
再重新設置,就可以正常編譯了,
筆者建議修改下安裝位置,到自定義目錄中,以免與其他opencl的庫文件沖突
可能需要多次點擊configure按鈕,全部成功后,點擊Generate按鈕,生成項目文件
終端里,切換到項目文件目錄,執行如下命令
mingw32-make
若編譯成功 ,再執行如下命令,安裝到指定目錄中
mingw32-make install
已經編譯好的庫,可以直接下載使用?
后記
編譯生成了的庫,相關比msvc編譯器少了很多,但必要的C++綁定相關,基本都在