Windows 上的 UCRT 的编译问题似乎解决了

试了下kiennq最新的emacs31 ucrt,发现出现了编码的问题,又是典中典的GBK与UTF-8的斗争……

编码没问题啊, 只需要加这一行就行了。
(prefer-coding-system 'utf-8)

其实还有更方便的方法,把 MSYS2 的库先都复制过去,打开 Emacs,再把所有库选中删除,Windows 不让删正在用的库就能把需要的给过滤了

1 个赞

看了下,是时间编码出了问题:

设置 (setq locale-coding-system 'utf-8) 解决了(默认值cp936)。

已经使用上面 aqua0210大佬提供的命令安装过依赖了,但是还是提示依赖缺失,这该如何解决

试试:Package: mingw-w64-ucrt-x86_64-zlib - MSYS2 Packages

pacman -S mingw-w64-ucrt-x86_64-zlib

不过我好像从来没碰到过缺失 zlib 的问题。

没有效果,所有依赖我都安装了

能够提供更多信息吗

  • 编译的源代码 commit
  • configure 参数

commit就是最新的emacs,直接clone的github镜像最新分支

https://github.com/kiennq/emacs-build/releases/download/v31.320.20241117.2a7a984/emacs-2a7a984-ucrt-x86_64.msix

这个下载下来右键当压缩包打开就行, 他还有编译好的mps分支(但是mps分支用emacsclient会coredump)

https://github.com/brechtsanders/winlibs_mingw/releases/download/14.2.0posix-19.1.1-12.0.0-ucrt-r2/winlibs-x86_64-posix-seh-gcc-14.2.0-llvm-19.1.1-mingw-w64ucrt-12.0.0-r2.7z 要nativecomp的话path里塞个这个

1 个赞

我是想尝试在win上编译igc分支,所以先尝试编译master分支,结果连master都编译不起来

我拉了一下最新的, configure 没什么问题…

也许可以重装一下 msys2

在 Windows 上编译 igc 分支挺折腾,可以参考下 emacs/README-IGC at scratch/igckiennq/emacs-build

这个也试过了 :sob:

:fearful:

试试这个? Build Emacs 31 for Windows

佬你用的msys2什么版本,我怀疑是msys2的问题

(草,有时间我也去编一下 mps,不过现在不怎么有时间)

成了

1 个赞

很强 :laughing:

有点好奇最后是怎么解决的,顺带问下用上 MPS(igc)了吗

igc和mps是一个东西吗


我用用旧版本msys2重装解决了,但是还是出现了安装好的依赖显示没安装,不过出问题的是treesit而不是zlib,treesit可以改configure参数解决

igc分支使用了mps 库。

我看了下 scratch/igc的 readme,编译时似乎要 with-mps选项才算是用上了mps