当前位置: 首页 > 工具软件 > Texts > 使用案例 >

关于qgsexpression_texts.cpp文件在项目重新编译时被重新覆盖,导致编码被还原的问题

习洲
2023-12-01

编译qgis工程时,qgsexpression_texts.cpp文件会被覆盖。即使改了编码utf-8带签名,文件还是会被还原为utf-8无签名。

针对这一个问题,我总结有两种解决方案。

方法一:

先生成一次项目,待出现错误时,再通过notepad++修改qgsexpression_texts.cpp的编码为utf-8,然后保存,VS再生成一次项目(切记不要选重新生成!经过反复尝试选择重新生成项目qgsexpression_texts.cpp会被覆盖,选择生成则不会被覆盖),就能编译通过。

方法二:

在 qgis-3.12.3-build\src\core 找到 qgis_core.vcxproj ,查找 qgsexpression_texts.cpp.temp,删除如下四行。(类似的地方共有四处,都删除。)

if %errorlevel% neq 0 goto :cmEnd
D:\QGIS\OSGeo4W64\bin\python3.exe
E:/qgis-3.10.5/scripts/process_function_template.py
E:/qgis-3.10.5-build2/src/core/qgsexpression_texts.cpp.temp

if %errorlevel% neq 0 goto :cmEnd
"C:\Program Files (x86)\CMake\bin\cmake.exe" 
-DSRC=E:/qgis-3.10.5-build2/src/core/qgsexpression_texts.cpp.temp -DDST=E:/qgis-3.10.5-build2/src/core/qgsexpression_texts.cpp -P E:/qgis-3.10.5/cmake/CopyIfChanged.cmake

 

 类似资料: