批里批里 (゜-゜)つ🍺 干杯~|

七つ一旋桜

园龄:4年2个月粉丝:6关注:3

win11安装emacs+igc+mps

git clone https://github.com/kiennq/emacs-build
cd emacs-build
 .\emacs-build.cmd  --slim --clone --deps --variant mps --build --branch scratch/igc --with-mps --pdf-tools --hunspell --mu --isync --pack-all --with-tree-sitter=ifavailable

当msys2装好后强制退出开始换源
进入emacs-build下载的ucrt64后执行如下命令

sed -i "s#mirror.msys2.org/#mirrors.ustc.edu.cn/msys2/#g" /etc/pacman.d/mirrorlist*
pacman -Sy

然后在ucrt64中安装libmps

cd emacs-build
sh ./.github/scripts/install-libs.sh

然后安装pkgconf

pacman -S pkgconf

以上步骤为前置安装操作
之后重新执行emacs的build命令

 .\emacs-build.cmd  --slim --clone --deps --variant mps --build --branch scratch/igc --with-mps --pdf-tools --hunspell --mu --isync --pack-all --with-tree-sitter=ifavailable

其中msys2的最新版tree-sitter有问题,所以需要手动安装旧版的tree-sitter,或者先用ifavailable命令代替,等安装好之后手动复制dll到bin中


等安装结束或者出现报错后执行如下步骤
等安装日志在编译emacs后出现安装msys2的库的时候说明已经安装完成,在后续步骤中如果出现报错也无所谓,这是在安装一些dll,这些dll可以从kiennq的release中复制,安装结果在emacs-build/pkg
此时按照Build Emacs 31 for Windows中的步骤执行如下命令
其中$target是构建产物的目录,即emacs-build/pkg中的目录

target=path/to/emacs-build/pkg/your-target
mkdir $target/lib/gcc
cp /ucrt64/lib/{crtbegin,crtend,dllcrt2}.o $target/lib/gcc
cp /ucrt64/lib/lib{advapi32,gcc_s,mingw32,msvcrt,shell32,kernel32,mingwex,pthread,user32}.a $target/lib/gcc
# 按照自己的gcc版本调整路径
cp /ucrt64/lib/gcc/x86_64-w64-mingw32/14.2.0/libgcc.a $target/lib/gcc
cp /ucrt64/bin/{ld,as}.exe $target/lib/gcc

然后从kiennq/emacs-build: Scripts to build a distribution of Emacs from sources, using MSYS2 and Mingw64(32)中下载mps的msix,改后缀为zip解压,复制其中bin里的dll到emacs-build/pkg里的bin中

本文作者:七つ一旋桜

本文链接:https://www.cnblogs.com/poifa/p/18583557

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   七つ一旋桜  阅读(70)  评论(0编辑  收藏  举报
历史上的今天:
2022-12-03 k9s - cli for manage k8s
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起