中文注释可能导致Visual Studio编译C/C++项目时出现C1070错误

错误描述:尝试升级KTransformers,使用Visual Studio 2022(版本17.11.3)的MSVC C/C++编译器编译ktransformers\third_party\llamafile\iqk_mul_mat.inc文件时出现C1070错误(文件中的#if/#endif对不匹配):

8>E:\ktransformers\third_party\llamafile\iqk_mul_mat.inc(4921,1): error C1070: 文件“E:\ktransformers\third_party\llamafile\iqk_mul_mat.inc”中的 #if/#endif 对不匹配
8>(编译源文件“../../../third_party/llamafile/iqk_mul_mat_amd_avx2.cpp”)
8>E:\ktransformers\third_party\llamafile\iqk_mul_mat.inc(4921,1): error C1070: 文件“E:\ktransformers\third_party\llamafile\iqk_mul_mat.inc”中的 #if/#endif 对不匹配
8>(编译源文件“../../../third_party/llamafile/iqk_mul_mat_amd_zen4.cpp”)

错误处理:手动检查ktransformers\third_party\llamafile\iqk_mul_mat.inc文件以及Git提交记录未发现导致#if/#endif对的匹配关系损坏的问题。后发现该文件中包含中文注释,将中文注释改为英文后再次编译,问题解决。

参考资料:

https://blog.csdn.net/weixin_42892101/article/details/120791797

it
除非特别注明,本页内容采用以下授权方式: Creative Commons Attribution-ShareAlike 3.0 License