vcpkg安装msys2
綜述
vcpkg安裝msys2出現了很多問題。
下面記錄一下我的解決方案。
po一下結果
原因
vcpkg每次都會按照首次下載的包的哈希來檢測,然后覆蓋之前已經設置好的部分,:修改proxy或者mirror后的顯然不能滿足這個檢測,然后就被搞了。(一開始我一直以為自己配置失敗了…太菜了導致最后才去檢查.cmake)最后手動壓縮一個包,然后搞一個sha512,替換.cmake,在搞個stamp就解決了。
步驟
首先安裝好msys2后,請設置proxy或者鏡像。
這里設置proxy:
在vcpkg的downloads\tools\msys2\msys64\etc的profile文件中添加:
然后使用管理權限啟動msys2(由于你是下載的tar.xz包,所以初次啟動需要key驗證,遺憾的是默認的keyserver無法為我們分發key)
所以你會卡在申請key這一步。
此時請關閉msys2.exe重新啟動(管理員權限)輸入:
然后
pacman -Syyuu --disable-download-timeout --noconfirm --needed --overwrite '*'完畢。
此時msys2配置完畢。
從您的msys2目錄中將msys64壓縮為msys2-base-x86-64-20181211.tar.xz。
如何創建請參考windows壓縮tar.gz tar.xz
并放在vcpkg-root\downloads文件夾/目錄中(注意:需要創建的是tar.xz不是tar.gz)。
獲取上面創建的msys2-base-x86-64-20181211.tar.gz文件的SHA512值, 如何獲取函數的哈希值請看:文件的哈希值sha512,md等
修改 vcpkg_root\scripts\cmake\vcpkg_acquire_msys.cmake 第59行,將哈希值換為:剛才你獲得那個。
最后,請在downloads\tools\msys2 文件夾下創建一個
initialized-msys2_64.stamp,為其輸入一個0
希望當vcpkg運行并需要msys2時,它會看到一個tar.gz文件存在于下載文件夾/目錄中,SHA512與之匹配,然后看到它已經被解壓縮并已存在。
完成!
下載一個icu包測試一下:(確保你測試之前buildtree文件夾下沒有icu文件)
成功!
更多
我在github上po了issue然后得到很完美的回答。
https://github.com/microsoft/vcpkg/issues/10255
總結
以上是生活随笔為你收集整理的vcpkg安装msys2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 向量的向量积
- 下一篇: ksweb打开php,如何在Androi