银行 社区服务 每日签到 会员排行 网站地图
  • 4846阅读
  • 79回复

皮卡鱼傻瓜式高级编译教程

楼层直达
级别: 版主
[棋中红钻3级]发帖数量≥500篇 [棋中黄钻3级]金币数量≥2000枚 [未点亮棋中蓝钻]乐币数量<10枚 [棋中粉钻1级]贡献值数量≥1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
515
金币
2880
威望
0
贡献值
2
乐币
5
主题
22
此教程适合小白和半斤八两的看  大佬们略过了。。。。。。。。
一、需下载的文件和配置
1、下载安装msys2-x86_64(https://mirrors.tuna.tsinghua.edu.cn/msys2/distrib/x86_64/
     安装目录下打开:  \etc\pacman.d\mirrorlist.clang64,文本修改(Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/clang64/到第一行)
2、更新:clang64窗口输入" pacman -Syu" 选择"Y"可多次输入直到出现there is nothing to do
     clang64窗口输入"pacman -S --needed base-devel mingw-w64-clang-x86_64-toolchain" 选择"Y"可多次输入直到出现there is nothing to do
3、下载皮卡鱼源码和nnue权重
      https://codeload.github.com/PikaCat-OuO/Pikafish/zip/refs/heads/master
      https://github.com/official-pikafish/Networks/releases/download/master-net/pikafish.nnue
      解压提取"src”文件夹 把nnue权重放入后复制到C盘(不可更改"src"名称)
4、下载我制作的编译脚本"jb.sh"文件解压后"jb.sh"文件夹复制到C盘(不可更改"jb.sh"和文件夹内文件名称)
二、开始编译
1、打开开始菜单中的clang64窗口输入以下内容(可一次性全部复制也可一次复制一行以下内容 编译好的引擎在"src”文件夹内)
    /c/jb.sh/x86-64.sh
    /c/jb.sh/x86-64-avx2.sh
    /c/jb.sh/x86-64-bmi2.sh
    /c/jb.sh/x86-64-avx512.sh
    /c/jb.sh/x86-64-vnni512.sh
    /c/jb.sh/x86-64-sse41-popcnt.sh
三、安卓和苹果系统编译
   除需以上文件外还需下载 Android NDK 编译器工具链(https://developer.android.google.cn/ndk/downloads?hl=zh_cn)
   还需其在MSYS2中的使用增加环境变量 时间有限 我就把官网的英文教程翻译以下内容 脚本制作雷同以上"jb.sh"修改下内容即可
1、Windows环境下环境变量“C:\Android\Sdk\ndk\toolchains\llvm\prebuilt\windows-x86_64”(地址可自己改)
2、在 MSYS2 安装目录中创建一个指向该目录的链接
    打开CMD.EXE命令提示符  然后使用Windows命令MKLINK 如下所示:(地址可自己改)
    mklink /D "C:\msys64\Android" "C:\Android\Sdk\ndk\toolchains\llvm\prebuilt\windows-x86_64"
    在视窗上输入:$ export PATH=D:\ndk\bin:$PATH (环境变量)
    这样Android NDK 编译器工具链可从 MSYS 环境终端内使用和clang64工具链相同
3、比如命令(编译时可参考):
    make strip ARCH=armv8 COMP=ndk
    mv pikafish pikafish_DEV_armv8
四、更更更高级的!!!
    关于代码优化修改 呵呵 等你学会看代码了 再共同探讨 不对的地方请同学多批评指正
    编写教程和脚本不易 请原凉我的回复金币设置 也算是为了活跃论坛气氛
最最最重要的两句话:呵呵  从此后编译皮卡鱼就是你的骡子你的马,你想咋耍你咋耍
                                看后你还是学不会的话 就真没办法了 不要问我 问也不回 我就这水平了

脚本下载:https://wwaab.lanzout.com/iEYRz178kq0d  密码:

本帖最近评分记录: 4 条评分 金币 +29
石破天惊 金币 +8 2023-09-04 感谢大神,下载研究研究
xxx 金币 +10 2023-09-03 感谢楼主制作编译教程,辛苦了。
唯此为大 金币 +1 2023-09-03 感谢楼主制作教程。
无名其实 金币 +10 2023-09-03 感谢分享编译教程
关键词: 皮卡鱼
级别: 少尉
[棋中红钻1级]发帖数量≥10篇 [棋中黄钻2级]金币数量≥1000枚 [未点亮棋中蓝钻]乐币数量<10枚 [棋中粉钻2级]贡献值数量≥5点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
95
金币
1765
威望
0
贡献值
9
乐币
2
主题
1
只看该作者 79楼 发表于: 03-22
活到老,学到老,先学习一下
级别: 三级士官
[棋中红钻1级]发帖数量≥10篇 [棋中黄钻1级]金币数量≥100枚 [棋中蓝钻1级]乐币数量≥10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
86
金币
997
威望
0
贡献值
0
乐币
19
主题
1
只看该作者 78楼 发表于: 2023-12-07
找不到脚本文件JB.SH.不知道什么内容.请提供JB.SH.
级别: 列兵
[未点亮棋中红钻]发帖数量<10篇 [未点亮棋中黄钻]金币数量<100枚 [未点亮棋中蓝钻]乐币数量<10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
2
金币
14
威望
0
贡献值
0
乐币
0
主题
0
只看该作者 77楼 发表于: 2023-12-06
密码不正确无法下载请版主解决
级别: 四级士官
[棋中红钻2级]发帖数量≥100篇 [未点亮棋中黄钻]金币数量<100枚 [未点亮棋中蓝钻]乐币数量<10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
191
金币
90
威望
0
贡献值
0
乐币
0
主题
0
只看该作者 76楼 发表于: 2023-12-06
感谢楼主放出教程
级别: 列兵
[未点亮棋中红钻]发帖数量<10篇 [未点亮棋中黄钻]金币数量<100枚 [未点亮棋中蓝钻]乐币数量<10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
2
金币
14
威望
0
贡献值
0
乐币
0
主题
0
只看该作者 75楼 发表于: 2023-12-06
小白的福音:谢谢版主分享学习学习
级别: 上尉
[棋中红钻4级]发帖数量≥1000篇 [棋中黄钻2级]金币数量≥1000枚 [棋中蓝钻1级]乐币数量≥10枚 [棋中粉钻1级]贡献值数量≥1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
1080
金币
1109
威望
1
贡献值
2
乐币
10
主题
19
只看该作者 74楼 发表于: 2023-11-16
引用
引用第68楼m6807于2023-11-09 17:24发表的  :
此脚本虽能编译,但对最新更新的皮卡鱼不能更好的兼容。等有空了 我再更新下脚本

最近,陆续有棋友成功推出可调整打分标准的自编译鱼引擎,希望本版主能够跟进。
要是把调整打分标准的操作也搞成一个脚本文件,这就更好了。
棋友们等待版主的更新,先说声谢谢。
级别: 上尉
[棋中红钻4级]发帖数量≥1000篇 [棋中黄钻2级]金币数量≥1000枚 [棋中蓝钻1级]乐币数量≥10枚 [棋中粉钻1级]贡献值数量≥1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
1080
金币
1109
威望
1
贡献值
2
乐币
10
主题
19
只看该作者 73楼 发表于: 2023-11-10
回 71楼(风的线条) 的帖子
已经搞定,是命令格式不对。
不同的编译环境,命令格式略有不同。
级别: 少尉
[棋中红钻2级]发帖数量≥100篇 [未点亮棋中黄钻]金币数量<100枚 [未点亮棋中蓝钻]乐币数量<10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
182
金币
21
威望
0
贡献值
0
乐币
0
主题
2
只看该作者 72楼 发表于: 2023-11-10
学习皮卡鱼高级编译教程,学习了!
舟遥遥以轻扬  风飘飘而吹衣
级别: 少尉
[棋中红钻2级]发帖数量≥100篇 [棋中黄钻1级]金币数量≥100枚 [棋中蓝钻1级]乐币数量≥10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
267
金币
741
威望
0
贡献值
0
乐币
18
主题
5
只看该作者 71楼 发表于: 2023-11-09
先把pikafish.nnue和源文件拷贝在一起,然后打开clang,我的目录和您的可能不同,您按您实际的输入一下,我屏幕上是如下显示的,您参考一下:

XXXXX@XXXXX  CLANG64 ~
$  cd d:/src/1107/src

XXXXX@XXXXX CLANG64 /d/src/1107/src
$ make build ARCH=x86-64-avx2 COMP=clang

总共就在$后面输入2行命令,一个是cd,一个是make,最简单的avx2.exe就完成了嘛.

想办法复现了一下867错误,您把源文件里新生成的18个O文件和1个DEPEND文件删除了再重新编译就可以成功了.

舟遥遥以轻扬  风飘飘而吹衣
级别: 上尉
[棋中红钻4级]发帖数量≥1000篇 [棋中黄钻2级]金币数量≥1000枚 [棋中蓝钻1级]乐币数量≥10枚 [棋中粉钻1级]贡献值数量≥1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
1080
金币
1109
威望
1
贡献值
2
乐币
10
主题
19
只看该作者 70楼 发表于: 2023-11-09
回 67楼(风的线条) 的帖子
输入同样的命令,MINGW64能编译出来,CLANG64就不行。
这说明不是输入命令的问题。
级别: 上尉
[棋中红钻4级]发帖数量≥1000篇 [棋中黄钻2级]金币数量≥1000枚 [棋中蓝钻1级]乐币数量≥10枚 [棋中粉钻1级]贡献值数量≥1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
1080
金币
1109
威望
1
贡献值
2
乐币
10
主题
19
只看该作者 69楼 发表于: 2023-11-09
回 68楼(m6807) 的帖子
脚本里可以多加几个指令集吗?比如:x86-64-sse3-popcnt,x86-32-sse2,另一位版主已经预告不再编译32位版本了。
楼主的脚本可以用VIM编辑修改成自己的目录吗?
老衲是极品小白,纯粹为了好玩。
级别: 版主
[棋中红钻3级]发帖数量≥500篇 [棋中黄钻3级]金币数量≥2000枚 [未点亮棋中蓝钻]乐币数量<10枚 [棋中粉钻1级]贡献值数量≥1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
515
金币
2880
威望
0
贡献值
2
乐币
5
主题
22
只看该作者 68楼 发表于: 2023-11-09
此脚本虽能编译,但对最新更新的皮卡鱼不能更好的兼容。等有空了 我再更新下脚本
舟遥遥以轻扬  风飘飘而吹衣
级别: 少尉
[棋中红钻2级]发帖数量≥100篇 [棋中黄钻1级]金币数量≥100枚 [棋中蓝钻1级]乐币数量≥10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
267
金币
741
威望
0
贡献值
0
乐币
18
主题
5
只看该作者 67楼 发表于: 2023-11-09
您看一下他的bat文件,64后面要加一个空格 COMP=clang 的
舟遥遥以轻扬  风飘飘而吹衣
级别: 上尉
[棋中红钻4级]发帖数量≥1000篇 [棋中黄钻2级]金币数量≥1000枚 [棋中蓝钻1级]乐币数量≥10枚 [棋中粉钻1级]贡献值数量≥1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
1080
金币
1109
威望
1
贡献值
2
乐币
10
主题
19
只看该作者 66楼 发表于: 2023-11-09
回 65楼(风的线条) 的帖子
输入:make build ARCH=x86-64,编译不成功。
但是用楼主的脚本能顺利编译出来。
舟遥遥以轻扬  风飘飘而吹衣
级别: 少尉
[棋中红钻2级]发帖数量≥100篇 [棋中黄钻1级]金币数量≥100枚 [棋中蓝钻1级]乐币数量≥10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
267
金币
741
威望
0
贡献值
0
乐币
18
主题
5
只看该作者 65楼 发表于: 2023-11-09
盲猜命令不对,您在哪个目录输入的啥?
舟遥遥以轻扬  风飘飘而吹衣
级别: 上尉
[棋中红钻4级]发帖数量≥1000篇 [棋中黄钻2级]金币数量≥1000枚 [棋中蓝钻1级]乐币数量≥10枚 [棋中粉钻1级]贡献值数量≥1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
1080
金币
1109
威望
1
贡献值
2
乐币
10
主题
19
只看该作者 64楼 发表于: 2023-11-09
lld: error: unknown argument: --no-as-needed
g++: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [Makefile:982: pikafish.exe] Error 1
make[1]: Leaving directory '/e/pikafish/src'
make: *** [Makefile:867: build] Error 2
====================================
MSYS2安装和更新顺利。
CLANG64和MINGW64的搭建更新也很顺利。
用MINGW64编译正常。
但是,用CLANG64编译时,卡在最后,无法生成引擎文件。
上面是报错提示,大侠们给点建议行不行,怎么搞?
级别: 上等兵
[未点亮棋中红钻]发帖数量<10篇 [未点亮棋中黄钻]金币数量<100枚 [未点亮棋中蓝钻]乐币数量<10枚 [未点亮棋中粉钻]贡献值数量<1点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
6
金币
16
威望
0
贡献值
0
乐币
0
主题
0
只看该作者 63楼 发表于: 2023-11-09
找不到脚本文件
哈哈,好久不见皮卡兄发自己搞的自编译引擎了
级别: 上尉
[棋中红钻3级]发帖数量≥500篇 [棋中黄钻4级]金币数量≥5000枚 [未点亮棋中蓝钻]乐币数量<10枚 [棋中粉钻2级]贡献值数量≥5点 [未点亮棋中彩钻]精华帖数量<1篇
发帖
931
金币
5586
威望
0
贡献值
8
乐币
4
主题
0
只看该作者 62楼 发表于: 2023-11-08
密码不正确啊。。。。。。。。。。。。。。。。。。
xxx
级别: 首席版主
[棋中红钻5级]发帖数量≥2000篇 [棋中黄钻1级]金币数量≥100枚 [棋中蓝钻1级]乐币数量≥10枚 [未点亮棋中粉钻]贡献值数量<1点 [棋中彩钻2级]精华帖数量≥2篇
发帖
2239
金币
864
威望
5
贡献值
0
乐币
26
主题
256

只看该作者 61楼 发表于: 2023-11-01
回 59楼(皮卡皮卡) 的帖子
哈哈,好久不见皮卡兄发自己搞的自编译引擎了
快速回复

限56 字节
请不要在回贴只采用字母:“ PP、asdfhjkl、HAO、OK、ddddddd ......”。  请不要在回贴过于简单的内容:“不错、顶、支持、厉害、呵呵、靠、晕........”
 
验证问题: 我们的论坛名字是?
上一个 下一个