level 14
填坑,recheck 一坨 issue ,然后被 vcpkg 坑……
因为 nuget 里找到的 FreeType 包死活没法支持 vc142 ,所以换包管理器。
试了下 canon ,用 MSYS2 的 pip 没法找到,懒得另外装了……(倒是 git repo 几年前刚公开一个月的时候就 clone 了。)
看了下 vcpkg ,有支持 integrate ,大概会有 M$ 长期支持,所以 clone 了试试。结果各种坑……
2019年07月14日 17点07分
2
level 14
LAN 软链接 repo 复制了一坨 bootstrap 略过,然后 integrate 成功。然后 vcpkg install freetype ,提示要 git ,然后现有的 git 版本不够自动下载……干掉,更新 GitHub Desktop 最新的还是不够,一狠心直接 pacman -S git ,污染 %PATH% 就算了,反正 TortoiseGit 的能单独设置照样不用 MSYS2 的(免得导致钩了 MSYS2 git hack 选项都无效的刷新以后一坨鬼列表的 bug ,懒得确认修复没有了)。
然后发现要装 powershell-core ,自动从 GitHub 官方发布地址下载 6.2.1 x86 ,但是死活装不上。GitHub 的 vcpkg 有个 issue 7207 反馈这个问题,不过大概这边会更麻烦,因为从 GitHub 上直接下载单独装都不行,折腾一整天后来国内下载站找了个 msi 的 6.2.1 x64 的装上了。然后高潮来了,特么不认……
看了一坨源码发现里面不像 cmake/git/ninja 这样特别处理,就是无条件下载“其它工具”,然后找到 scripts/vcpkgTools.xml ,看起来里面并没有问题。仔细看了下才发现不覆盖环境变量默认 exe 要放在 downloads/tools/powershell-core-6.2.1-windows 目录下(放着 scripts 在顶层,工具默认在 downloads 下,这什么丁日设计),于是软链 Program Files 下的 pwsh.exe 过来。之后还有逻辑自动复制 pwsh.exe 到 powershell.exe ,浪费空间也不管了……
2019年07月14日 17点07分
3
level 14
之前没装包时就有问题:
Vcpkg is unable to link because we cannot decide between Release and Debug libraries. Please define the property VcpkgConfiguration to be 'Release' or 'Debug' (currently 'debug').
不鸟,装了包也没法用。于是糊了俩 props 文件扔树型管理器的相关项目里(没用到的项目暂且无视了)。重新编译,然后终于能(又)发现 cl 的 bug 了……
VS2019 的 cl 似乎会抽风把 decltype(errno)& 推断成 const int& ,又得倒腾了。
2019年07月14日 17点07分
4
level 14
两个插曲:
装 powershell-core 之前死活下载不了,曾经打算源码编译,另一台服务器升级 VS2019 要求重启折腾了一会解决不了不管了,直接升级到最新的加上 .NET core 的还是没法成功加载解决方案里的项目。一看文档,说 GitHub 上有个 issue 3400 专门跟踪 VS 不能编译的问题……一看还是 VS2017 没法编译。再一看,能编译的是 VS2015 和 dotnet CLI ……于是按里面的脚本下载 dotnet CLI ,这回 URL 看来不是之前 GitHub 的 s3 amazon 的辣鸡服务器,用的 Azure ,然而照样下载不了,弃疗……
装 powershell-core 之后再用 vcpkg 安装包,提示 VS 没英语语言包被忽略,黑人问号???看 GitHub issue 有人顺带的提问大概是因为觉得非英文环境出各种幺蛾子问题所以整个不支持,强制要求英文了。(什么 zz 思路……劳资不用 cmake 的或者用了还没炸了的就得被坑?)看源码只检查了 VC tool 的 1033 目录,随便建立几个空目录蒙混过关。
2019年07月14日 17点07分
5
level 14
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Scroll.cpp(94,48): warning C4244: “初始化”: 从“platform::SDst”转换到“YSLib::UI::ATrack::ValueType”,可能丢失数据
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Selector.cpp(141,1): error C1001: 编译器中发生内部错误。
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Selector.cpp(141,1): error C1001: (编译器文件“msc1.cpp”,第 1533 行)
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Selector.cpp(141,1): error C1001: 要解决此问题,请尝试简化或更改上面所列位置附近的程序。
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Selector.cpp(141,1): error C1001: 请选择 Visual C++
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Selector.cpp(141,1): error C1001: “帮助”菜单上的“技术支持”命令,或打开技术支持帮助文件来获得详细信息。
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Selector.cpp(141,1): error C1001: “C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.21.27702\bin\HostX86\x86\CL.exe”中的内部编译器错误
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Selector.cpp(141,1): error C1001: 请选择 Visual C++
9>F:\Programing\YSLib\YFramework\source\YSLib\UI\Selector.cpp(141,1): error C1001: “帮助”菜单上的“技术支持”命令,或打开技术支持帮助文件来获得详细信息
草……
2019年07月14日 18点07分
6