1. 程式人生 > 程式設計 >使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法

使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法

編譯環境:VS2019 + Win10 + cmake-gui-3.8.0 + cef_binary_3.2623.1401.gb90a3be_windows32

最後一個相容Windows XP的CEF(2623)的下載地址:

連結: https://pan.baidu.com/s/1U82l-LxgCikktaUA5-jdPw 提取碼: pkt6

1、解壓 cef_binary_3.2623.1401.gb90a3be_windows32 後,目錄如下:

使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法

2、下載cmake-gui

連結: https://pan.baidu.com/s/1wJRdt8wZG5Ss-1Ppuxh7uw 提取碼: 4twy

下載好cmake-gui並安裝好之後開啟cmake-gui.exe,設定如下:

Where is the source code : cef_binary_3.2623.1401.gb90a3be_windows32解壓後的路徑

where to build the binaries : cef_binary_3.2623.1401.gb90a3be_windows32解壓後的路徑

Configure: 選擇你電腦上裝有的VS的編譯器的版本,如果選擇了電腦本地並沒有的VS編譯器版本,會遇到如下情況:

使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法
使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法

用cmake生成編譯工程時候報這樣的錯誤,原因是配置錯誤導致cmake找不到對應的編譯器,於是通過File->Delete cache清理配置,重新通過Configure更換你電腦上裝有的VS的編譯器的版本即可。

使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法
使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法

當出現Configuring done的時候點選Generate按鈕即可生成對應版本的VS sln解決方案,使用VS開啟生成解決方案即可。

VS2015開啟cef.sln然後直接編譯即可生成libcef_dll_wrapper.lib檔案了,如下圖專案cefsimple專案和cefclient專案會失敗,這個並不影響生成我需要的libcef_dll_wrapper.lib,我就不解決了。

使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法

在這裡還有一個坑就是這個工具最多隻支援到VS2017,由於我的電腦上裝了VS2013和VS2019,於是我選擇了VS2013的配置併成功編譯出了libcef_dll_warpper.lib,但在匯入CEF瀏覽器實際專案呼叫的時候報瞭如下錯誤:error LNK2038: 檢測到“_MSC_VER”的不匹配項問題。

_MSC_VER這個相當於做了巨集的檢測 _MSC_VER 定義編譯器的版本。下面是一些編譯器版本的_MSC_VER值:

MS VC++ 14.0 _MSC_VER = 1900 vs2015

MS VC++ 12.0 _MSC_VER = 1800 vs2013的編譯器他的平臺是v120

MS VC++ 11.0 _MSC_VER = 1700 vs2012的編譯器他的平臺是v110

MS VC++ 10.0 _MSC_VER = 1600 Visual C++ 2010

MS VC++ 9.0 _MSC_VER = 1500 Visual C++ 2008

MS VC++ 8.0 _MSC_VER = 1400 Visual C++ 2005

MS VC++ 7.1 _MSC_VER = 1310

MS VC++ 7.0 _MSC_VER = 1300

MS VC++ 6.0 _MSC_VER = 1200

MS VC++ 5.0 _MSC_VER = 1100

error LNK2038: 檢測到“_MSC_VER”的不匹配項: 值“1800”不匹配值“1700”(main.obj 中)

原因:由於你使用了vs2012,工作集選擇了更高的1800也就是vs2013的,致使msvc不相容!

方法:在專案(解決方案資源管理器或者屬性管理器裡都行)右鍵屬性-配置屬性-常規中,平臺工具集選用為合適平臺即可,比如上面的就是要選擇成2012的 v11版本,注意光選了還沒有用,還要應用。

注意一個工程裡面會有幾個解決方案的時候,需要給每個解決方案都更改一遍,最後重新編譯即可。

到此這篇關於使用VS2019編譯CEF2623專案的libcef_dll_wrapper.lib的方法的文章就介紹到這了,更多相關VS2019 libcef_dll_wrapper.lib內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!