wingtk / gvsbuild

GTK stack for Windows
GNU General Public License v2.0
454 stars 170 forks source link

C:\gtk-build\gtk\x64\release\include\glib-2.0\glib/gatomic.h(1): error C4819: #877

Closed wonderview closed 1 year ago

wonderview commented 1 year ago

OS: Windows 10 Python: 3.11 Visual Studio Build tools: 2022

Exectue: gvsbuild build --enable-gi --py-wheel gtk4 pygobject

It was almost done. but some characterset problems arise. The windows is Chinese version. I use notepad to open the pointed files and save as UTF-8 with BOM format. The problems are still there. I suspect the meson-generated path separator in C:\gtk-build\gtk\x64\release\include\glib-2.0\glib/gatomic.h

building 'gi._gi' extension creating build\temp.win-amd64-cpython-311 creating build\temp.win-amd64-cpython-311\Release creating build\temp.win-amd64-cpython-311\Release\gi "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DPY_SSIZE_T_CLEAN -IC:\Users\oneview\AppData\Local\Temp\build-via-sdist-umgnom9g\PyGObject-3.42.2 -IC:\Users\oneview\AppData\Local\Temp\build-via-sdist-umgnom9g\PyGObject-3.42.2\gi -IC:\Users\oneview\AppData\Local\Temp\build-env-8f85juxa\include -IC:\Python311\include -IC:\Python311\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" -IC:\gtk-build\gtk\x64\release\include\cairo -IC:\gtk-build\gtk\x64\release\include\gobject-introspection-1.0 -IC:\gtk-build\gtk\x64\release\include\glib-2.0 -IC:\gtk-build\gtk\x64\release\lib\glib-2.0\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" -IC:\gtk-build\gtk\x64\release\include /Tcgi\gimodule.c /Fobuild\temp.win-amd64-cpython-311\Release\gi\gimodule.obj -FImsvc_recommended_pragmas.h gimodule.c

C:\gtk-build\gtk\x64\release\include\glib-2.0\glib/gatomic.h(1): error C4819: This file contains characters that can not be represented in the current code page (936). Save the file in Unicode format to prevent data loss

C:\gtk-build\gtk\x64\release\include\glib-2.0\glib/gtestutils.h(1): error C4819: This file contains characters that can not be represented in the current code page (936). Save the file in Unicode format to prevent data loss

error: command 'C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\bin\HostX86\x64\cl.exe' failed with exit code 2

I hardly correct this type of error.

BTW may gst-python be put into project schedule of gvsbuild? Appreciated.

wonderview commented 1 year ago

After failed building, replacing two files in the direcotry C:\gtk-build\gtk\x64\release\include\glib-2.0\glib (because build-time overwriting)or those in the tar.gz (hash check error) not work. But during building, replacing them in the directory in time, it works.

unicodedecode-error solution does not solve this. This happens in other point. image

danyeaw commented 1 year ago

I don't know how to reproduce this to be honest.

BTW may gst-python be put into project schedule of gvsbuild? Appreciated.

gvsbuild build gst-python should work

codeXiaoMing commented 1 year ago

I encountered the same mistake as you. Have you solved it now @wonderview

ShawnHanXiao commented 1 year ago

Hi @wonderview , I've got the same errors: C:\gtk-build\gtk\x64\release\include\glib-2.0\glib/gatomic.h(1): error C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 C:\gtk-build\gtk\x64\release\include\glib-2.0\glib/gtestutils.h(1): error C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 C:\gtk-build\gtk\x64\release\include\glib-2.0\gobject/gtype.h(881): error C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 Any idea or update? Thanks a lot!

ShawnHanXiao commented 1 year ago

Hi All, finally it passed with a solution from this page: https://www.cnblogs.com/Steven-HU/p/14547749.html

danyeaw commented 1 year ago

Duplicate of #1081.