[英]How is "Microsoft Build Tools 2015" different from "Visual C++ Build Tools 2015"?
[英]How do I build Google Crashpad with MSVC (Microsoft Visual C++) 2015?
Google Crashpad聲稱可以使用MSVC 2015和MSVC 2017進行編譯(在撰寫本文時)。
但是,Google Crashpad取決於mini_chromium ,這是一個鉻項目, 明確表明需要MSVC 2017或更高版本 。
我已嘗試按照本指南 ,最新的Crashpad提交和depot_tools來編譯Crashpad 。 我可以在MSVC 2017上成功編譯,但是在MSVC 2015和mini_chromium上收到大量編譯器錯誤-我需要我的客戶端軟件動態鏈接到使用MSVC 2015編譯的庫。
這個StackOverflow問題使我能夠將Crashpad構建到動態庫中。 但是我只能在MSVC 2017中這樣做。當我稍后嘗試將MSVC 2015編譯的軟件與MSVC 2017中的Crashpad構建鏈接時,出現此錯誤 。
我使用MSVC 2015成功編譯了Crashpad。
這需要我挖掘舊的提交(在使用mini_chromium方面的Crashpad之前,該方面僅通過MSVC 2017進行編譯)。
我遵循的過程如下:
請遵循本指南 ,首先設置Google Crashpad
在遵循上述指南之后,克隆了depot_tools(以及在您的PATH中),進入您的depot_tools目錄並提取舊的提交(就在2018年5月1日之前):
$ cd ~/depot_tools/
git checkout `git rev-list -n 1 --first-parent --before="2018-05-01" master`
$ cd ~/crashpad/crashpad
git checkout `git rev-list -n 1 --first-parent --before="2018-05-01" master`
$ gclient sync -D --force --reset
現在,您應該可以自由地使用MSVC 2015正常編譯Crashpad了:
cd ~/crashpad/crashpad
gn gen out/Default
ninja -C out/Default
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.