<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Posts on I&#39;m Nine_Pendoragon</title>
        <link>https://asagi.moe/posts/</link>
        <description>Recent content in Posts on I&#39;m Nine_Pendoragon</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <copyright>&lt;a href=&#34;https://creativecommons.org/licenses/by-nc/4.0/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;CC BY-NC 4.0&lt;/a&gt;</copyright>
        <lastBuildDate>Sun, 09 Nov 2025 00:00:00 +0000</lastBuildDate>
        <atom:link href="https://asagi.moe/posts/index.xml" rel="self" type="application/rss+xml" />
        
        <item>
            <title>在雨云mcsm面板服部署l4d2服务器</title>
            <link>https://asagi.moe/posts/4_l4d2_server/</link>
            <pubDate>Sun, 09 Nov 2025 00:00:00 +0000</pubDate>
            
            <guid>https://asagi.moe/posts/4_l4d2_server/</guid>
            <description>&lt;p&gt;  l4d2是一款不错的团建游戏，游戏有mod可以解锁房间8人联机，但是超过8人就得部署服务器。当然，可以在自己电脑上部署，然后通过frp内网穿透也是可以玩的，就是比较麻烦，我前几天也试过了在自己电脑上开了个服务器，然后用樱花fpr内网穿透，延迟还可以，就是我得先开游戏，再开服务器。不知道为什么在电脑上开服之后steam就是正在游戏状态。相关教程在樱花frp&lt;a href=&#34;https://doc.natfrp.com/offtopic/source.html&#34;&gt;帮助文档&lt;/a&gt;里面也有。因为觉得太麻烦，就想找个云服试试看，上一篇帖子也提到了雨云的免费的游戏云面板服。&lt;img src=&#34;https://asagi.moe/yuyun/mcsm.png&#34; alt=&#34;mcsm&#34; title=&#34;mcsm&#34;&gt;
&lt;img src=&#34;https://asagi.moe/yuyun/mcsm_game.png&#34; alt=&#34;mcsm_game&#34; title=&#34;mcsm_game&#34;&gt;
配置给l4d2开服应该也是够用了。记得选纯环境。&lt;/p&gt;
&lt;p&gt;  这个mcsm面板服感觉像是在一个容器里面操作一样，相较于vps感觉很不方便，也不能ssh访问。不过这免费的还要啥自行车，3000积分无限续费，每天签到还送500积分，相当于可以一直嫖。抱着玩一玩的心态，耗时两个晚上也是搭建成功了。总体上来说和vps开服没什么区别，这里放一个大佬的教程&lt;a href=&#34;https://www.bilibili.com/opus/736922474423255104&#34;&gt;https://www.bilibili.com/opus/736922474423255104&lt;/a&gt;，讲的还是蛮详细的。开服用到的是steamCMD这样一个东西，wiki上也有如何安装这个的教程&lt;a href=&#34;https://developer.valvesoftware.com/wiki/SteamCMD#Debian&#34;&gt;https://developer.valvesoftware.com/wiki/SteamCMD#Debian&lt;/a&gt;，部署这个服务器大致分两步，第一步就是下载安装steamCMD和l4d2服务端，第二步就是安装插件平台和各种插件。在去这两个链接之前先把我下面的内容看完，很重要，虽然面板服上搭建服务器和vps没什么大的区别。&lt;/p&gt;
&lt;p&gt;  那么在这个面板服上开服有哪些不同。因为这个面板服和docker差不多，只给挂载了根目录下的workspace文件夹，换句话说重启服务器之后只有这个workspace文件夹里面的东西是不会被删除的，我暂时不知道能不能让其他文件夹持久化，所以部署完之后不要重启服务器，而且所有的东西尽量安装在/workspace目录下。那么拿到服务器第一件事情是什么？上一篇帖子也说了，第一步应该是去换镜像源。镜像源目录一般是/etc/opt下名为sources.list的文件，或者sources.list.d的文件夹内的文件，我拿到手的服务器只有sources.list.d这个文件夹，删掉。然后用功能组里面的文件管理写入一个sources.list的文件，这个文件管理打开就是/workspace目录。我目前用的是南京大学的镜像源，速度还可以，sources.list怎么写可以问ai。创建好之后copy这个文件到/etc/opt目录，然后就可以apt update等操作了。还有一点值得注意的是记得安装sudo，因为l4d2不建议在root下开服，在你切换到普通用户时，要用sudo命令，反正我拿到手的服默认是没有sudo的，这个时候安装sudo，就得sudo apt install sudo，显然安装不了，只能切回root用户，但是又不知道密码，我也没试就直接重启了，当然重启意味着之前的工作全白做了。&lt;/p&gt;
&lt;p&gt;  这里再补充几点。这个面板服也是可以安装screen的，这样就能在一个终端下面打开多个会话了，非常方便。ctrl A D也是可以用的。给普通用户sudo权限可以用sudo usermod -aG sudo username。开服的端口用服务器给你的端口就行，不一定要用27015。git clone太慢等问题可以直接问ai，各种报错也直接copy给ai让ai帮你分析，大部分情况下都能解决问题。&lt;/p&gt;
&lt;p&gt;  服务器是搭好了，但是玩游戏的人呢？（）其实群里有人也拿vps搭了一个服，所以我这个面板服就相当于当玩具自己折腾着玩了玩，也没拿来测试效果怎么样，至少我自己能连上服务器，延迟也还可以。&lt;/p&gt;
&lt;p&gt;  我的雨云推广链接：&lt;a href=&#34;https://www.rainyun.com/ODQ3NjQ0_&#34;&gt;https://www.rainyun.com/ODQ3NjQ0_&lt;/a&gt;&lt;/p&gt;</description>
            <content type="html"><![CDATA[<p>  l4d2是一款不错的团建游戏，游戏有mod可以解锁房间8人联机，但是超过8人就得部署服务器。当然，可以在自己电脑上部署，然后通过frp内网穿透也是可以玩的，就是比较麻烦，我前几天也试过了在自己电脑上开了个服务器，然后用樱花fpr内网穿透，延迟还可以，就是我得先开游戏，再开服务器。不知道为什么在电脑上开服之后steam就是正在游戏状态。相关教程在樱花frp<a href="https://doc.natfrp.com/offtopic/source.html">帮助文档</a>里面也有。因为觉得太麻烦，就想找个云服试试看，上一篇帖子也提到了雨云的免费的游戏云面板服。<img src="/yuyun/mcsm.png" alt="mcsm" title="mcsm">
<img src="/yuyun/mcsm_game.png" alt="mcsm_game" title="mcsm_game">
配置给l4d2开服应该也是够用了。记得选纯环境。</p>
<p>  这个mcsm面板服感觉像是在一个容器里面操作一样，相较于vps感觉很不方便，也不能ssh访问。不过这免费的还要啥自行车，3000积分无限续费，每天签到还送500积分，相当于可以一直嫖。抱着玩一玩的心态，耗时两个晚上也是搭建成功了。总体上来说和vps开服没什么区别，这里放一个大佬的教程<a href="https://www.bilibili.com/opus/736922474423255104">https://www.bilibili.com/opus/736922474423255104</a>，讲的还是蛮详细的。开服用到的是steamCMD这样一个东西，wiki上也有如何安装这个的教程<a href="https://developer.valvesoftware.com/wiki/SteamCMD#Debian">https://developer.valvesoftware.com/wiki/SteamCMD#Debian</a>，部署这个服务器大致分两步，第一步就是下载安装steamCMD和l4d2服务端，第二步就是安装插件平台和各种插件。在去这两个链接之前先把我下面的内容看完，很重要，虽然面板服上搭建服务器和vps没什么大的区别。</p>
<p>  那么在这个面板服上开服有哪些不同。因为这个面板服和docker差不多，只给挂载了根目录下的workspace文件夹，换句话说重启服务器之后只有这个workspace文件夹里面的东西是不会被删除的，我暂时不知道能不能让其他文件夹持久化，所以部署完之后不要重启服务器，而且所有的东西尽量安装在/workspace目录下。那么拿到服务器第一件事情是什么？上一篇帖子也说了，第一步应该是去换镜像源。镜像源目录一般是/etc/opt下名为sources.list的文件，或者sources.list.d的文件夹内的文件，我拿到手的服务器只有sources.list.d这个文件夹，删掉。然后用功能组里面的文件管理写入一个sources.list的文件，这个文件管理打开就是/workspace目录。我目前用的是南京大学的镜像源，速度还可以，sources.list怎么写可以问ai。创建好之后copy这个文件到/etc/opt目录，然后就可以apt update等操作了。还有一点值得注意的是记得安装sudo，因为l4d2不建议在root下开服，在你切换到普通用户时，要用sudo命令，反正我拿到手的服默认是没有sudo的，这个时候安装sudo，就得sudo apt install sudo，显然安装不了，只能切回root用户，但是又不知道密码，我也没试就直接重启了，当然重启意味着之前的工作全白做了。</p>
<p>  这里再补充几点。这个面板服也是可以安装screen的，这样就能在一个终端下面打开多个会话了，非常方便。ctrl A D也是可以用的。给普通用户sudo权限可以用sudo usermod -aG sudo username。开服的端口用服务器给你的端口就行，不一定要用27015。git clone太慢等问题可以直接问ai，各种报错也直接copy给ai让ai帮你分析，大部分情况下都能解决问题。</p>
<p>  服务器是搭好了，但是玩游戏的人呢？（）其实群里有人也拿vps搭了一个服，所以我这个面板服就相当于当玩具自己折腾着玩了玩，也没拿来测试效果怎么样，至少我自己能连上服务器，延迟也还可以。</p>
<p>  我的雨云推广链接：<a href="https://www.rainyun.com/ODQ3NjQ0_">https://www.rainyun.com/ODQ3NjQ0_</a></p>
]]></content>
        </item>
        
        <item>
            <title>云服务器与聊天机器人</title>
            <link>https://asagi.moe/posts/3_astrbot/</link>
            <pubDate>Sat, 08 Nov 2025 00:00:00 +0000</pubDate>
            
            <guid>https://asagi.moe/posts/3_astrbot/</guid>
            <description>&lt;p&gt;  最近痴迷于折腾云服务器，事情的起因是国庆放假期间突然刷到astrbot的视频，恰好我也一直想要搭建一个群机器人玩玩，国庆也是无聊的很（虽然有很多工作学习上的事情没做完，但放假就是放假），于是马上就去看了astrbot的文档，在自己电脑上搭建了一个，全是一键部署，非常无脑。但是自己电脑上部署一是电脑一关机机器人就不干事了，二是听说windows上面部署容易封号。找找找，于是去雨云上买了个一个月的服务器。话说其实我第一次接触云服是跟朋友玩mc买过一个面板服，当初也听说过雨云，当时还觉得挺贵的，现在想想确实性价比还算可以的了。&lt;/p&gt;
&lt;p&gt;  第一次在云服上部署astrbot我系统选的是debian 12，跟着别人选的，也安装了1panel。安装教程官方文档都写着，我也不赘述了，就讲讲我一些心得吧。群聊机器人首先是得会说话，用了一下大语言模型，我个人感觉还不错的是kimi家的几个模型，就是好用的太贵有点用不起，也有很多人推荐gemini。这就不提LMArena了，astrbot上有个LMArena反代的插件，安装还挺方便的，主要的问题是这个得用到浏览器和油猴，但是怎么在无显示器的云服上用浏览器第一下还真难到我了，问了我身边的大佬推荐我用vnc，是我以前从来没接触过的东西……问ai各种折腾也没弄好，本来想放弃了，第二天又看到原来雨云控制台的远程就是vnc，装上xorg和chromium就能用这个插件了。不过那个时候我并不知道这个插件还能用来反代白嫖大语言模型，全拿去玩手办化，今天在薅来的阿里云38元2核2g云服上玩astrbot的这个插件，发现几天前LMArena更新使反代成为过去式了，可惜！&lt;/p&gt;
&lt;p&gt;  阿里云的这个小机我刚开始拿到其实很怀疑2g内存到底能不能部署群聊bot，一开始我还学着第一次部署的时候一样下了一个1panel，结果资源完全不够吃，其实我也一直搞不明白为什么要装1panel这个玩意。后面直接在debian上部署机器人，只安装了一个meme生成器的插件，能用是能用了，但经常会卡死，还是继续问ai，才了解到swap这个玩意，于是分配了1个g的虚拟内存，效果可佳，到今天也是过了一个星期了还从没卡死过。甚至今天加了个vnc远程打开chromium服务器都没崩过。突然想起来还有一个东西是玩云服之后才接触到的，就是screen，这个允许我关掉shell之后对话依然存在，简直神器。&lt;/p&gt;
&lt;p&gt;  vps(Virtual Private Server)说完了，这两天朋友玩l4d2需要组一个云服，我又打开了雨云，发现了原来雨云可以白嫖一个面板服，2核4g对于l4d2来说开服完全足够了，主要是这个是免费的。&lt;img src=&#34;https://asagi.moe/yuyun/mcsm.png&#34; alt=&#34;mcsm&#34; title=&#34;mcsm&#34;&gt;&lt;/p&gt;
&lt;p&gt;  可以选择纯debian环境。&lt;img src=&#34;https://asagi.moe/yuyun/mcsm_game.png&#34; alt=&#34;mcsm_game&#34; title=&#34;mcsm_game&#34;&gt;&lt;/p&gt;
&lt;p&gt;  其实就相当于给了一个容器，只能在容器里面操作，挂在了一个根目录下的文件夹workspace，只有这个文件夹内的文件会持久化，重启服务器不会被删除。那么一般拿到服务器要做的第一件事情是什么呢，也许我一开始不会去考虑换镜像源的事，但是当需要用apt update这样的事情事，看着几十个kb每秒的速度我才意识到换镜像源是多么重要。镜像源列表在/etc/opt目录下，找到文件很容易，但是要修改镜像源就没那么容易了，我试了nano，emacs以及vim等常见编辑器，都没有安装，less也没有安装所以也不知道怎么看默认镜像源里面写的什么。当然控制面板给了一个文件管理的窗口，但是似乎只能对workspace下的文件进行操作，这件事当然有很多解决办法，我能想到的方案就是用文件管理的功能在workspace下面创建我想要的镜像源的文件，然后cp到镜像源目录下。l4d2的服务器建议不要使用root用户开服，所以再我们切换用户的时候别忘了先安装sudo，不然你就会知道这个在需要用root权限的时候，在你sudo的时候系统提示sudo命令找不到，这个时候想切换会root用户却不知道root用户的密码，然后只能重启，所有的工作都白忙活了。开服过程就不在这里说了，结论就是最后开服成功了，后面我再专门开一篇写一下我的开服总结。总的来说这样一个面板服还挺有意思的，主要是免费的，看论坛上有人还折腾过拿这个面板服来部署网站。&lt;/p&gt;
&lt;p&gt;  最近双十一活动在雨云抢到了99的一个2核4g的香港的云服，抢到手之后却突然不知道拿这个来做什么了。就这样，我从一开始到处苦苦寻找高性价比服务器到现在手上已经有3个至少一年的云服了。云服务器太好玩了什么的。&lt;/p&gt;
&lt;p&gt;  要是有人看到我的帖子也想买服务器，可以用我的推广链接让我嫖一点积分来给服务器续费，感谢。
雨云推广链接：&lt;a href=&#34;https://www.rainyun.com/ODQ3NjQ0_&#34;&gt;https://www.rainyun.com/ODQ3NjQ0_&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;  下面附上astrbot官方文档:&lt;a href=&#34;https://docs.astrbot.app/&#34;&gt;https://docs.astrbot.app/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;  部署qqbot需要一个框架和一个协议端。astrbot是机器人框架，协议端也就是消息平台是什么在这个文档里面也能找到。&lt;/p&gt;
&lt;p&gt;  其实我上个月就想写这篇帖子了，但是一直没什么空，鸽到现在，有很多之前想写的内容也忘了，也可能没忘，毕竟我想不起来自己忘了什么，不过也好，如果那个时候来写估计废话更多。话说在这里写帖子真是一种享受，比剪视频和做报告享受多了，我发疯的无人在意的小角落（）。&lt;/p&gt;</description>
            <content type="html"><![CDATA[<p>  最近痴迷于折腾云服务器，事情的起因是国庆放假期间突然刷到astrbot的视频，恰好我也一直想要搭建一个群机器人玩玩，国庆也是无聊的很（虽然有很多工作学习上的事情没做完，但放假就是放假），于是马上就去看了astrbot的文档，在自己电脑上搭建了一个，全是一键部署，非常无脑。但是自己电脑上部署一是电脑一关机机器人就不干事了，二是听说windows上面部署容易封号。找找找，于是去雨云上买了个一个月的服务器。话说其实我第一次接触云服是跟朋友玩mc买过一个面板服，当初也听说过雨云，当时还觉得挺贵的，现在想想确实性价比还算可以的了。</p>
<p>  第一次在云服上部署astrbot我系统选的是debian 12，跟着别人选的，也安装了1panel。安装教程官方文档都写着，我也不赘述了，就讲讲我一些心得吧。群聊机器人首先是得会说话，用了一下大语言模型，我个人感觉还不错的是kimi家的几个模型，就是好用的太贵有点用不起，也有很多人推荐gemini。这就不提LMArena了，astrbot上有个LMArena反代的插件，安装还挺方便的，主要的问题是这个得用到浏览器和油猴，但是怎么在无显示器的云服上用浏览器第一下还真难到我了，问了我身边的大佬推荐我用vnc，是我以前从来没接触过的东西……问ai各种折腾也没弄好，本来想放弃了，第二天又看到原来雨云控制台的远程就是vnc，装上xorg和chromium就能用这个插件了。不过那个时候我并不知道这个插件还能用来反代白嫖大语言模型，全拿去玩手办化，今天在薅来的阿里云38元2核2g云服上玩astrbot的这个插件，发现几天前LMArena更新使反代成为过去式了，可惜！</p>
<p>  阿里云的这个小机我刚开始拿到其实很怀疑2g内存到底能不能部署群聊bot，一开始我还学着第一次部署的时候一样下了一个1panel，结果资源完全不够吃，其实我也一直搞不明白为什么要装1panel这个玩意。后面直接在debian上部署机器人，只安装了一个meme生成器的插件，能用是能用了，但经常会卡死，还是继续问ai，才了解到swap这个玩意，于是分配了1个g的虚拟内存，效果可佳，到今天也是过了一个星期了还从没卡死过。甚至今天加了个vnc远程打开chromium服务器都没崩过。突然想起来还有一个东西是玩云服之后才接触到的，就是screen，这个允许我关掉shell之后对话依然存在，简直神器。</p>
<p>  vps(Virtual Private Server)说完了，这两天朋友玩l4d2需要组一个云服，我又打开了雨云，发现了原来雨云可以白嫖一个面板服，2核4g对于l4d2来说开服完全足够了，主要是这个是免费的。<img src="/yuyun/mcsm.png" alt="mcsm" title="mcsm"></p>
<p>  可以选择纯debian环境。<img src="/yuyun/mcsm_game.png" alt="mcsm_game" title="mcsm_game"></p>
<p>  其实就相当于给了一个容器，只能在容器里面操作，挂在了一个根目录下的文件夹workspace，只有这个文件夹内的文件会持久化，重启服务器不会被删除。那么一般拿到服务器要做的第一件事情是什么呢，也许我一开始不会去考虑换镜像源的事，但是当需要用apt update这样的事情事，看着几十个kb每秒的速度我才意识到换镜像源是多么重要。镜像源列表在/etc/opt目录下，找到文件很容易，但是要修改镜像源就没那么容易了，我试了nano，emacs以及vim等常见编辑器，都没有安装，less也没有安装所以也不知道怎么看默认镜像源里面写的什么。当然控制面板给了一个文件管理的窗口，但是似乎只能对workspace下的文件进行操作，这件事当然有很多解决办法，我能想到的方案就是用文件管理的功能在workspace下面创建我想要的镜像源的文件，然后cp到镜像源目录下。l4d2的服务器建议不要使用root用户开服，所以再我们切换用户的时候别忘了先安装sudo，不然你就会知道这个在需要用root权限的时候，在你sudo的时候系统提示sudo命令找不到，这个时候想切换会root用户却不知道root用户的密码，然后只能重启，所有的工作都白忙活了。开服过程就不在这里说了，结论就是最后开服成功了，后面我再专门开一篇写一下我的开服总结。总的来说这样一个面板服还挺有意思的，主要是免费的，看论坛上有人还折腾过拿这个面板服来部署网站。</p>
<p>  最近双十一活动在雨云抢到了99的一个2核4g的香港的云服，抢到手之后却突然不知道拿这个来做什么了。就这样，我从一开始到处苦苦寻找高性价比服务器到现在手上已经有3个至少一年的云服了。云服务器太好玩了什么的。</p>
<p>  要是有人看到我的帖子也想买服务器，可以用我的推广链接让我嫖一点积分来给服务器续费，感谢。
雨云推广链接：<a href="https://www.rainyun.com/ODQ3NjQ0_">https://www.rainyun.com/ODQ3NjQ0_</a></p>
<p>  下面附上astrbot官方文档:<a href="https://docs.astrbot.app/">https://docs.astrbot.app/</a></p>
<p>  部署qqbot需要一个框架和一个协议端。astrbot是机器人框架，协议端也就是消息平台是什么在这个文档里面也能找到。</p>
<p>  其实我上个月就想写这篇帖子了，但是一直没什么空，鸽到现在，有很多之前想写的内容也忘了，也可能没忘，毕竟我想不起来自己忘了什么，不过也好，如果那个时候来写估计废话更多。话说在这里写帖子真是一种享受，比剪视频和做报告享受多了，我发疯的无人在意的小角落（）。</p>
]]></content>
        </item>
        
        <item>
            <title>使用wsl安装archlinux，Geant4及ROOT</title>
            <link>https://asagi.moe/posts/2_wsl_archlinux/</link>
            <pubDate>Thu, 03 Jul 2025 00:00:00 +0000</pubDate>
            
            <guid>https://asagi.moe/posts/2_wsl_archlinux/</guid>
            <description>&lt;h2 id=&#34;2025年11月14日更新&#34;&gt;2025年11月14日更新&lt;/h2&gt;
&lt;p&gt;建议在linux的文件系统下安装，之前忘记提了。见文档&lt;a href=&#34;https://learn.microsoft.com/zh-cn/windows/wsl/filesystems&#34;&gt;”跨 Windows 和 Linux 文件系统工作“&lt;/a&gt;。&lt;/p&gt;
&lt;h2 id=&#34;官网&#34;&gt;官网：&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://learn.microsoft.com/zh-cn/windows/wsl/install&#34;&gt;https://learn.microsoft.com/zh-cn/windows/wsl/install&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;使用wsl安装linux&#34;&gt;使用wsl安装linux&lt;/h2&gt;
&lt;h3 id=&#34;1-安装wsl&#34;&gt;1. 安装wsl&lt;/h3&gt;
&lt;p&gt;打开终端管理员，win11鼠标右键点击win菜单可以找到。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-PowerShell&#34; data-lang=&#34;PowerShell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# PowerShell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;wsl --install
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;遇到如下报错：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-PowerShell&#34; data-lang=&#34;PowerShell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# PowerShell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;PS C:\Users\gouz&amp;gt; wsl --install
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;正在下载&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;:&lt;/span&gt; Ubuntu
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;正在安装&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;:&lt;/span&gt; Ubuntu
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;由于未安装所需的特性&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;，&lt;/span&gt;无法启动操作&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;错误代码&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;:&lt;/span&gt; Wsl/InstallDistro/Service/RegisterDistro/CreateVm/HCS/HCS_E_SERVICE_NOT_AVAILABLE
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;按照旧版本的步骤先启用适用于linux的windows子系统，然后启用虚拟机功能，然后关机重启。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-PowerShell&#34; data-lang=&#34;PowerShell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# PowerShell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;dism.exe /online /enable-feature /featurename&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;:&lt;/span&gt;Microsoft-Windows-Subsystem-Linux /all /norestart
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;dism.exe /online /enable-feature /featurename&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;:&lt;/span&gt;VirtualMachinePlatform /all /norestart
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;重启之后再次打开终端管理员，输入：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-PowerShell&#34; data-lang=&#34;PowerShell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# PowerShell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;wsl --install
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;默认安装的是Ubuntu，在windows终端内输入&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-PowerShell&#34; data-lang=&#34;PowerShell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# PowerShell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;wsl -l -o
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;可以查看在线商店可用的linux分发版的列表。
我更换成了archlinux，&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-PowerShell&#34; data-lang=&#34;PowerShell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# PowerShell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;wsl --install -d archlinux
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;2-为archlinux创建非root用户&#34;&gt;2. 为archlinux创建非root用户&lt;/h3&gt;
&lt;p&gt;先在windows终端中打开wsl archlinux&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-PowerShell&#34; data-lang=&#34;PowerShell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# PowerShell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;wsl -d archlinux
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;进入archlinux默认是root用户，先安装sudo软件包&lt;/p&gt;</description>
            <content type="html"><![CDATA[<h2 id="2025年11月14日更新">2025年11月14日更新</h2>
<p>建议在linux的文件系统下安装，之前忘记提了。见文档<a href="https://learn.microsoft.com/zh-cn/windows/wsl/filesystems">”跨 Windows 和 Linux 文件系统工作“</a>。</p>
<h2 id="官网">官网：</h2>
<p><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install">https://learn.microsoft.com/zh-cn/windows/wsl/install</a></p>
<h2 id="使用wsl安装linux">使用wsl安装linux</h2>
<h3 id="1-安装wsl">1. 安装wsl</h3>
<p>打开终端管理员，win11鼠标右键点击win菜单可以找到。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-PowerShell" data-lang="PowerShell"><span style="display:flex;"><span><span style="color:#75715e"># PowerShell</span>
</span></span><span style="display:flex;"><span>wsl --install
</span></span></code></pre></div><p>遇到如下报错：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-PowerShell" data-lang="PowerShell"><span style="display:flex;"><span><span style="color:#75715e"># PowerShell</span>
</span></span><span style="display:flex;"><span>PS C:\Users\gouz&gt; wsl --install
</span></span><span style="display:flex;"><span>正在下载<span style="color:#960050;background-color:#1e0010">:</span> Ubuntu
</span></span><span style="display:flex;"><span>正在安装<span style="color:#960050;background-color:#1e0010">:</span> Ubuntu
</span></span><span style="display:flex;"><span>由于未安装所需的特性<span style="color:#960050;background-color:#1e0010">，</span>无法启动操作<span style="color:#960050;background-color:#1e0010">。</span>
</span></span><span style="display:flex;"><span>错误代码<span style="color:#960050;background-color:#1e0010">:</span> Wsl/InstallDistro/Service/RegisterDistro/CreateVm/HCS/HCS_E_SERVICE_NOT_AVAILABLE
</span></span></code></pre></div><p>按照旧版本的步骤先启用适用于linux的windows子系统，然后启用虚拟机功能，然后关机重启。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-PowerShell" data-lang="PowerShell"><span style="display:flex;"><span><span style="color:#75715e"># PowerShell</span>
</span></span><span style="display:flex;"><span>dism.exe /online /enable-feature /featurename<span style="color:#960050;background-color:#1e0010">:</span>Microsoft-Windows-Subsystem-Linux /all /norestart
</span></span><span style="display:flex;"><span>dism.exe /online /enable-feature /featurename<span style="color:#960050;background-color:#1e0010">:</span>VirtualMachinePlatform /all /norestart
</span></span></code></pre></div><p>重启之后再次打开终端管理员，输入：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-PowerShell" data-lang="PowerShell"><span style="display:flex;"><span><span style="color:#75715e"># PowerShell</span>
</span></span><span style="display:flex;"><span>wsl --install
</span></span></code></pre></div><p>默认安装的是Ubuntu，在windows终端内输入</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-PowerShell" data-lang="PowerShell"><span style="display:flex;"><span><span style="color:#75715e"># PowerShell</span>
</span></span><span style="display:flex;"><span>wsl -l -o
</span></span></code></pre></div><p>可以查看在线商店可用的linux分发版的列表。
我更换成了archlinux，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-PowerShell" data-lang="PowerShell"><span style="display:flex;"><span><span style="color:#75715e"># PowerShell</span>
</span></span><span style="display:flex;"><span>wsl --install -d archlinux
</span></span></code></pre></div><h3 id="2-为archlinux创建非root用户">2. 为archlinux创建非root用户</h3>
<p>先在windows终端中打开wsl archlinux</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-PowerShell" data-lang="PowerShell"><span style="display:flex;"><span><span style="color:#75715e"># PowerShell</span>
</span></span><span style="display:flex;"><span>wsl -d archlinux
</span></span></code></pre></div><p>进入archlinux默认是root用户，先安装sudo软件包</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>pacman -Syu
</span></span><span style="display:flex;"><span>pacman -S sudo
</span></span></code></pre></div><p>然后创建非root用户，注意下面的命令仍然是在archlinux的终端中输入。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>useradd -m -G wheel -s /bin/bash username
</span></span><span style="display:flex;"><span>passwd username  <span style="color:#75715e">#为用户username设置密码</span>
</span></span></code></pre></div><p>然后还需要将用户配置为sudo用户</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>pacman -S nano  <span style="color:#75715e">#nano是文本编辑器，我个人比较喜欢用，感觉适合小白</span>
</span></span><span style="display:flex;"><span>nano /etc/sudoers
</span></span></code></pre></div><p>打开文件后ctrl+F搜索wheel，然后将%wheel ALL=(ALL:ALL) ALL 这一行的注释删掉，也就是删掉“# %wheel ALL=(ALL:ALL) ALL”前面的“#”，随后ctrl+X退出，输入Y按下回车保存。
然后切换成新建的用户测试一下sudo是否能够使用。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>su - username
</span></span><span style="display:flex;"><span>sudo pacman -Syu
</span></span></code></pre></div><p>如果需要，可以将wsl的archlinux默认启动用户改成刚刚新建的用户。打开windows终端</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-PowerShell" data-lang="PowerShell"><span style="display:flex;"><span><span style="color:#75715e">#PowerShell</span>
</span></span><span style="display:flex;"><span>wsl --manage archlinux --set-default-user username
</span></span></code></pre></div><p>&ldquo;wsl &ndash;help&quot;可以查看更多关于wsl的命令选项。</p>
<h3 id="3-wsl配置文件-参考">3. wsl配置文件 （参考）</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-ini" data-lang="ini"><span style="display:flex;"><span>    <span style="color:#66d9ef">[wsl2]</span>
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">memory</span><span style="color:#f92672">=</span><span style="color:#e6db74">8GB
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    processors=8
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    [experimental]
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    autoMemoryReclaim=gradual
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    networkingMode=mirrored
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    dnsTunneling=true
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    firewall=true
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    autoProxy=true
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    sparseVhd=true</span>
</span></span></code></pre></div><p>文件存放于c盘/用户/用户名目录下，文件名为&rdquo;.wslconfig&quot;。这个我也是搬的别的大佬的。</p>
<h2 id="安装root">安装ROOT</h2>
<h3 id="1-包管理器安装推荐">1. 包管理器安装（推荐）</h3>
<p>打开终端，输入，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e">#bash</span>
</span></span><span style="display:flex;"><span>sudo pacman -S root
</span></span></code></pre></div><p>安装完之后打开root检查一下，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>root
</span></span></code></pre></div><h3 id="2-从源码构建不推荐">2. 从源码构建（不推荐）</h3>
<p>不推荐，不推荐，不推荐！我自己已经放弃了，根本不知道要安装多少依赖
<a href="https://root.cern.ch/install/">https://root.cern.ch/install/</a> 打开链接翻到最下面的“Build from source”处，跟着输入命令即可</p>
<p>当然得先安装一下git依赖和camke等依赖。这里的依赖没安装完全，根据报错自行添加吧。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>sudo pacman -S git
</span></span><span style="display:flex;"><span>sudo pacman -S base-devel gcc cmake libx11 libxpm libxft libxext
</span></span><span style="display:flex;"><span>sudo pacman -S gsl giflib libjpeg-turbo libtiff libpng fontconfig
</span></span><span style="display:flex;"><span>sudo pacman -S python
</span></span><span style="display:flex;"><span>sudo pacman -S xrootd davix
</span></span></code></pre></div><p>安装完git之后复制粘贴官网教程中的命令即可，可能需要科学上网。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>mkdir root <span style="color:#f92672">&amp;&amp;</span> cd root
</span></span><span style="display:flex;"><span>git clone --branch latest-stable --depth<span style="color:#f92672">=</span><span style="color:#ae81ff">1</span> https://github.com/root-project/root.git root_src
</span></span><span style="display:flex;"><span>mkdir root_build root_install <span style="color:#f92672">&amp;&amp;</span> cd root_build
</span></span><span style="display:flex;"><span>cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>../root_install ../root_src
</span></span></code></pre></div><p>一直报错，我放弃了。</p>
<h4 id="报错">报错</h4>
<p>我在cmake时出现报错，此时依赖我只安装了cmake和git：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span>nine@DESKTOP-VL1ESD8 root_build<span style="color:#f92672">]</span>$ cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>../root_install ../root_src/
</span></span><span style="display:flex;"><span>CMake Deprecation Warning at CMakeLists.txt:32 <span style="color:#f92672">(</span>cmake_policy<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  The OLD behavior <span style="color:#66d9ef">for</span> policy CMP0116 will be removed from a future version
</span></span><span style="display:flex;"><span>  of CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  The cmake-policies<span style="color:#f92672">(</span>7<span style="color:#f92672">)</span> manual explains that the OLD behaviors of all
</span></span><span style="display:flex;"><span>  policies are deprecated and that a policy should be set to OLD only under
</span></span><span style="display:flex;"><span>  specific short-term circumstances.  Projects should be ported to the NEW
</span></span><span style="display:flex;"><span>  behavior and not rely on setting a policy to OLD.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Deprecation Warning at CMakeLists.txt:32 <span style="color:#f92672">(</span>cmake_policy<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  The OLD behavior <span style="color:#66d9ef">for</span> policy CMP0135 will be removed from a future version
</span></span><span style="display:flex;"><span>  of CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  The cmake-policies<span style="color:#f92672">(</span>7<span style="color:#f92672">)</span> manual explains that the OLD behaviors of all
</span></span><span style="display:flex;"><span>  policies are deprecated and that a policy should be set to OLD only under
</span></span><span style="display:flex;"><span>  specific short-term circumstances.  Projects should be ported to the NEW
</span></span><span style="display:flex;"><span>  behavior and not rely on setting a policy to OLD.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Error: CMake was unable to find a build program corresponding to <span style="color:#e6db74">&#34;Unix Makefiles&#34;</span>.  CMAKE_MAKE_PROGRAM is not set.  You probably need to <span style="color:#66d9ef">select</span> a different build tool.
</span></span><span style="display:flex;"><span>CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
</span></span><span style="display:flex;"><span>CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
</span></span><span style="display:flex;"><span>-- Configuring incomplete, errors occurred!
</span></span></code></pre></div><p>问过ai之后发现是缺少依赖，还得安装base-devel, gcc。</p>
<p>重新cmake又遇到报错：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> X11
</span></span><span style="display:flex;"><span>CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:227 <span style="color:#f92672">(</span>message<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  Could NOT find X11 <span style="color:#f92672">(</span>missing: X11_X11_INCLUDE_PATH X11_X11_LIB Xpm Xft Xext<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>Call Stack <span style="color:#f92672">(</span>most recent call first<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:591 <span style="color:#f92672">(</span>_FPHSA_FAILURE_MESSAGE<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  /usr/share/cmake/Modules/FindX11.cmake:684 <span style="color:#f92672">(</span>find_package_handle_standard_args<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  cmake/modules/SearchInstalledSoftware.cmake:80 <span style="color:#f92672">(</span>_find_package<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  cmake/modules/SearchInstalledSoftware.cmake:423 <span style="color:#f92672">(</span>find_package<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  CMakeLists.txt:287 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span></code></pre></div><p>复制给ai，发现还得安装libx11 libxpm libxft libxext。安装完之后cmake继续报错</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:227 <span style="color:#f92672">(</span>message<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  Could NOT find Python3 <span style="color:#f92672">(</span>missing: Python3_EXECUTABLE Interpreter<span style="color:#f92672">)</span> <span style="color:#f92672">(</span>Required
</span></span><span style="display:flex;"><span>  is at least version <span style="color:#e6db74">&#34;3.0&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>Call Stack <span style="color:#f92672">(</span>most recent call first<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:591 <span style="color:#f92672">(</span>_FPHSA_FAILURE_MESSAGE<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  /usr/share/cmake/Modules/FindPython/Support.cmake:4082 <span style="color:#f92672">(</span>find_package_handle_standard_args<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  /usr/share/cmake/Modules/FindPython3.cmake:640 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  cmake/modules/SearchInstalledSoftware.cmake:80 <span style="color:#f92672">(</span>_find_package<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  interpreter/llvm-project/llvm/CMakeLists.txt:892 <span style="color:#f92672">(</span>find_package<span style="color:#f92672">)</span>
</span></span></code></pre></div><p>这是因为缺少python3解释器。
还注意到在cmake过程中的输出信息:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>-- Could NOT find GIF <span style="color:#f92672">(</span>missing: GIF_LIBRARY GIF_INCLUDE_DIR<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Found PNG: /usr/lib/libpng.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;1.6.50&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Could NOT find JPEG <span style="color:#f92672">(</span>missing: JPEG_LIBRARY JPEG_INCLUDE_DIR<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Could NOT find TIFF <span style="color:#f92672">(</span>missing: TIFF_LIBRARY TIFF_INCLUDE_DIR<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>-- Could NOT find GSL: <span style="color:#f92672">(</span>Required is at least version <span style="color:#e6db74">&#34;1.10&#34;</span><span style="color:#f92672">)</span> <span style="color:#f92672">(</span>found GSL_INCLUDE_DIR-NOTFOUND<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- GSL not found. Set variable GSL_ROOT_DIR to point to your GSL installation
</span></span><span style="display:flex;"><span>--                Alternatively, you can also enable the option <span style="color:#e6db74">&#39;builtin_gsl&#39;</span> to build the GSL libraries internally<span style="color:#e6db74">&#39;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">--                For the time being switching OFF &#39;</span>mathmore<span style="color:#960050;background-color:#1e0010">&#39;</span> option
</span></span></code></pre></div><p>这是要安装gsl giflib libjpeg-turbo libtiff libpng freetype fontconfig，freetype安装不了，跳过，然后cmake继续报错：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span>nine@DESKTOP-VL1ESD8 root_build<span style="color:#f92672">]</span>$ cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>../root_install ../root_src/
</span></span><span style="display:flex;"><span>CMake Deprecation Warning at CMakeLists.txt:32 <span style="color:#f92672">(</span>cmake_policy<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  The OLD behavior <span style="color:#66d9ef">for</span> policy CMP0116 will be removed from a future version
</span></span><span style="display:flex;"><span>  of CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  The cmake-policies<span style="color:#f92672">(</span>7<span style="color:#f92672">)</span> manual explains that the OLD behaviors of all
</span></span><span style="display:flex;"><span>  policies are deprecated and that a policy should be set to OLD only under
</span></span><span style="display:flex;"><span>  specific short-term circumstances.  Projects should be ported to the NEW
</span></span><span style="display:flex;"><span>  behavior and not rely on setting a policy to OLD.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Deprecation Warning at CMakeLists.txt:32 <span style="color:#f92672">(</span>cmake_policy<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  The OLD behavior <span style="color:#66d9ef">for</span> policy CMP0135 will be removed from a future version
</span></span><span style="display:flex;"><span>  of CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  The cmake-policies<span style="color:#f92672">(</span>7<span style="color:#f92672">)</span> manual explains that the OLD behaviors of all
</span></span><span style="display:flex;"><span>  policies are deprecated and that a policy should be set to OLD only under
</span></span><span style="display:flex;"><span>  specific short-term circumstances.  Projects should be ported to the NEW
</span></span><span style="display:flex;"><span>  behavior and not rely on setting a policy to OLD.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>-- The C compiler identification is GNU 15.1.1
</span></span><span style="display:flex;"><span>-- The CXX compiler identification is GNU 15.1.1
</span></span><span style="display:flex;"><span>-- Detecting C compiler ABI info
</span></span><span style="display:flex;"><span>-- Detecting C compiler ABI info - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Check <span style="color:#66d9ef">for</span> working C compiler: /usr/sbin/cc - skipped
</span></span><span style="display:flex;"><span>-- Detecting C compile features
</span></span><span style="display:flex;"><span>-- Detecting C compile features - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Detecting CXX compiler ABI info
</span></span><span style="display:flex;"><span>-- Detecting CXX compiler ABI info - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Check <span style="color:#66d9ef">for</span> working CXX compiler: /usr/sbin/c++ - skipped
</span></span><span style="display:flex;"><span>-- Detecting CXX compile features
</span></span><span style="display:flex;"><span>-- Detecting CXX compile features - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Found Git: /usr/sbin/git <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;2.50.0&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Building ROOT version 6.36.000
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> a CUDA compiler
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> a CUDA compiler - NOTFOUND
</span></span><span style="display:flex;"><span>-- Found GCC. Major version 15, minor version <span style="color:#ae81ff">1</span>
</span></span><span style="display:flex;"><span>-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
</span></span><span style="display:flex;"><span>-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
</span></span><span style="display:flex;"><span>-- Found Threads: TRUE
</span></span><span style="display:flex;"><span>-- Performing Test GLIBCXX_USE_CXX11_ABI
</span></span><span style="display:flex;"><span>-- Performing Test GLIBCXX_USE_CXX11_ABI - Success
</span></span><span style="display:flex;"><span>-- ROOT default compression algorithm: zlib
</span></span><span style="display:flex;"><span>-- Checking internet connectivity
</span></span><span style="display:flex;"><span>-- Checking internet connectivity - found
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> ZLib
</span></span><span style="display:flex;"><span>-- Found ZLIB: /usr/lib/libz.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;1.3.1&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> nlohmann/json.hpp
</span></span><span style="display:flex;"><span>-- nlohmann/json.hpp not found. Switching on builtin_nlohmannjson option
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> Freetype
</span></span><span style="display:flex;"><span>-- Found Freetype: /usr/lib/libfreetype.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;2.13.3&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> PCRE
</span></span><span style="display:flex;"><span>-- Found PCRE2: /usr/include <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;10.45&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> LZMA
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> lzma_auto_decoder in /usr/lib/liblzma.so
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> lzma_auto_decoder in /usr/lib/liblzma.so - found
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> lzma_easy_encoder in /usr/lib/liblzma.so
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> lzma_easy_encoder in /usr/lib/liblzma.so - found
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> lzma_lzma_preset in /usr/lib/liblzma.so
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> lzma_lzma_preset in /usr/lib/liblzma.so - found
</span></span><span style="display:flex;"><span>-- Found LibLZMA: /usr/lib/liblzma.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;5.8.1&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> xxHash
</span></span><span style="display:flex;"><span>-- Found xxHash: /usr/lib/libxxhash.so <span style="color:#f92672">(</span>found suitable version <span style="color:#e6db74">&#34;0.8.3&#34;</span>, minimum required is <span style="color:#e6db74">&#34;0.8&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> ZSTD
</span></span><span style="display:flex;"><span>-- Found ZSTD: /usr/lib/libzstd.so
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> LZ4
</span></span><span style="display:flex;"><span>-- Found LZ4: /usr/lib/liblz4.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;1.10.0&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> X11
</span></span><span style="display:flex;"><span>-- Found X11: /usr/include  found components: Xpm Xft Xext
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> gethostbyname
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> gethostbyname - found
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> connect
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> connect - found
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> remove
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> remove - found
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> shmat
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> shmat - found
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> IceConnectionNumber in ICE
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> IceConnectionNumber in ICE - found
</span></span><span style="display:flex;"><span>-- X11_INCLUDE_DIR: /usr/include
</span></span><span style="display:flex;"><span>-- X11_LIBRARIES: /usr/lib/libSM.so;/usr/lib/libICE.so;/usr/lib/libX11.so;/usr/lib/libXext.so
</span></span><span style="display:flex;"><span>-- X11_Xpm_INCLUDE_PATH: /usr/include
</span></span><span style="display:flex;"><span>-- X11_Xpm_LIB: /usr/lib/libXpm.so
</span></span><span style="display:flex;"><span>-- X11_Xft_INCLUDE_PATH: /usr/include
</span></span><span style="display:flex;"><span>-- X11_Xft_LIB: /usr/lib/libXft.so
</span></span><span style="display:flex;"><span>-- X11_Xext_INCLUDE_PATH: /usr/include
</span></span><span style="display:flex;"><span>-- X11_Xext_LIB: /usr/lib/libXext.so
</span></span><span style="display:flex;"><span>-- Found GIF: /usr/lib/libgif.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;5.2.2&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Found PNG: /usr/lib/libpng.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;1.6.50&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Found JPEG: /usr/lib/libjpeg.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;80&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Found TIFF: /usr/lib/libtiff.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;4.7.0&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> GSL
</span></span><span style="display:flex;"><span>-- Found GSL: /usr/include <span style="color:#f92672">(</span>found suitable version <span style="color:#e6db74">&#34;2.8&#34;</span>, minimum required is <span style="color:#e6db74">&#34;1.10&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> Python
</span></span><span style="display:flex;"><span>-- Could NOT find Python3 <span style="color:#f92672">(</span>missing: Python3_NumPy_INCLUDE_DIRS NumPy<span style="color:#f92672">)</span> <span style="color:#f92672">(</span>found suitable version <span style="color:#e6db74">&#34;3.13.5&#34;</span>, minimum required is <span style="color:#e6db74">&#34;3.8&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> OpenGL
</span></span><span style="display:flex;"><span>-- Could NOT find OpenGL <span style="color:#f92672">(</span>missing: OPENGL_opengl_LIBRARY OPENGL_glx_LIBRARY OPENGL_INCLUDE_DIR<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- OpenGL <span style="color:#f92672">(</span>with GLU<span style="color:#f92672">)</span> not found. Switching off opengl option
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> LibXml2
</span></span><span style="display:flex;"><span>-- Found LibXml2: /usr/lib/libxml2.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;2.14.4&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Found OpenSSL: /usr/lib/libcrypto.so <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;3.5.1&#34;</span><span style="color:#f92672">)</span> found components: SSL
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> SQLite
</span></span><span style="display:flex;"><span>-- Found PkgConfig: /usr/sbin/pkg-config <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;2.5.1&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Found Sqlite: /usr/include
</span></span><span style="display:flex;"><span>-- Looking <span style="color:#66d9ef">for</span> CFITSIO
</span></span><span style="display:flex;"><span>-- Could NOT find CFITSIO <span style="color:#f92672">(</span>missing: CFITSIO_LIBRARY CFITSIO_INCLUDE_DIR<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- CFITSIO not found. You can enable the option <span style="color:#e6db74">&#39;builtin_cfitsio&#39;</span> to build the library internally<span style="color:#e6db74">&#39;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">--                    For the time being switching off &#39;</span>fitsio<span style="color:#e6db74">&#39; option
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for XROOTD
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">CMake Warning at cmake/modules/SearchInstalledSoftware.cmake:80 (_find_package):
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  By not providing &#34;FindXRootD.cmake&#34; in CMAKE_MODULE_PATH this project has
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  asked CMake to find a package configuration file provided by &#34;XRootD&#34;, but
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  CMake did not find one.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  Could not find a package configuration file provided by &#34;XRootD&#34; with any
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  of the following names:
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    XRootDConfig.cmake
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    xrootd-config.cmake
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  Add the installation prefix of &#34;XRootD&#34; to CMAKE_PREFIX_PATH or set
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  &#34;XRootD_DIR&#34; to a directory containing one of the above files.  If &#34;XRootD&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  provides a separate development package or SDK, be sure it has been
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  installed.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">Call Stack (most recent call first):
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  cmake/modules/SearchInstalledSoftware.cmake:997 (find_package)
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">  CMakeLists.txt:287 (include)
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- XROOTD not found, enabling &#39;</span>builtin_xrootd<span style="color:#e6db74">&#39; option
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Found OpenSSL: /usr/lib/libcrypto.so (found version &#34;3.5.1&#34;)
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Downloading and building XROOTD version 5.8.0
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Checking for module &#39;</span>davix&gt;<span style="color:#f92672">=</span>0.6.4<span style="color:#e6db74">&#39;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">--   Package &#39;</span>davix<span style="color:#e6db74">&#39; not found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for uuid_generate_random in uuid
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for uuid_generate_random in uuid - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Found libuuid: /usr/include
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Davix not found, switching ON &#39;</span>builtin_davix<span style="color:#e6db74">&#39; option.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for clock_gettime
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for clock_gettime - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for TBB
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Could NOT find TBB (missing: TBB_ROOT_DIR TBB_INCLUDE_DIR TBB_LIBRARY) (Required is at least version &#34;2020&#34;)
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- TBB not found, enabling &#39;</span>builtin_tbb<span style="color:#e6db74">&#39; option
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for VDT
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Could NOT find Vdt (missing: VDT_INCLUDE_DIR VDT_LIBRARY) (Required is at least version &#34;0.4&#34;)
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- VDT not found. Ensure that the installation of VDT is in the CMAKE_PREFIX_PATH
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">--                Switching ON &#39;</span>builtin_vdt<span style="color:#e6db74">&#39; option
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for BLAS for optional parts of TMVA
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Using GSL CBLAS for optional parts of TMVA
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- TMVA: Numpy or Python development package not found for python /usr/sbin/python3.13. Switching off tmva-pymva option
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- PyROOT: development package found. Building for version 3.13.5
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test ROOT_HAVE_CXX_ATOMICS_WITHOUT_LIB
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test ROOT_HAVE_CXX_ATOMICS_WITHOUT_LIB - Success
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building LLVM in &#39;</span>Release<span style="color:#960050;background-color:#1e0010">&#39;</span> mode.
</span></span><span style="display:flex;"><span>CMake Deprecation Warning at interpreter/llvm-project/cmake/Modules/CMakePolicy.cmake:6 <span style="color:#f92672">(</span>cmake_policy<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  The OLD behavior <span style="color:#66d9ef">for</span> policy CMP0114 will be removed from a future version
</span></span><span style="display:flex;"><span>  of CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  The cmake-policies<span style="color:#f92672">(</span>7<span style="color:#f92672">)</span> manual explains that the OLD behaviors of all
</span></span><span style="display:flex;"><span>  policies are deprecated and that a policy should be set to OLD only under
</span></span><span style="display:flex;"><span>  specific short-term circumstances.  Projects should be ported to the NEW
</span></span><span style="display:flex;"><span>  behavior and not rely on setting a policy to OLD.
</span></span><span style="display:flex;"><span>Call Stack <span style="color:#f92672">(</span>most recent call first<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  interpreter/llvm-project/llvm/CMakeLists.txt:6 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Deprecation Warning at interpreter/llvm-project/cmake/Modules/CMakePolicy.cmake:11 <span style="color:#f92672">(</span>cmake_policy<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  The OLD behavior <span style="color:#66d9ef">for</span> policy CMP0116 will be removed from a future version
</span></span><span style="display:flex;"><span>  of CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  The cmake-policies<span style="color:#f92672">(</span>7<span style="color:#f92672">)</span> manual explains that the OLD behaviors of all
</span></span><span style="display:flex;"><span>  policies are deprecated and that a policy should be set to OLD only under
</span></span><span style="display:flex;"><span>  specific short-term circumstances.  Projects should be ported to the NEW
</span></span><span style="display:flex;"><span>  behavior and not rely on setting a policy to OLD.
</span></span><span style="display:flex;"><span>Call Stack <span style="color:#f92672">(</span>most recent call first<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  interpreter/llvm-project/llvm/CMakeLists.txt:6 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Deprecation Warning at interpreter/llvm-project/cmake/Modules/CMakePolicy.cmake:6 <span style="color:#f92672">(</span>cmake_policy<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  The OLD behavior <span style="color:#66d9ef">for</span> policy CMP0114 will be removed from a future version
</span></span><span style="display:flex;"><span>  of CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  The cmake-policies<span style="color:#f92672">(</span>7<span style="color:#f92672">)</span> manual explains that the OLD behaviors of all
</span></span><span style="display:flex;"><span>  policies are deprecated and that a policy should be set to OLD only under
</span></span><span style="display:flex;"><span>  specific short-term circumstances.  Projects should be ported to the NEW
</span></span><span style="display:flex;"><span>  behavior and not rely on setting a policy to OLD.
</span></span><span style="display:flex;"><span>Call Stack <span style="color:#f92672">(</span>most recent call first<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  interpreter/llvm-project/clang/CMakeLists.txt:6 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Deprecation Warning at interpreter/llvm-project/cmake/Modules/CMakePolicy.cmake:11 <span style="color:#f92672">(</span>cmake_policy<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  The OLD behavior <span style="color:#66d9ef">for</span> policy CMP0116 will be removed from a future version
</span></span><span style="display:flex;"><span>  of CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  The cmake-policies<span style="color:#f92672">(</span>7<span style="color:#f92672">)</span> manual explains that the OLD behaviors of all
</span></span><span style="display:flex;"><span>  policies are deprecated and that a policy should be set to OLD only under
</span></span><span style="display:flex;"><span>  specific short-term circumstances.  Projects should be ported to the NEW
</span></span><span style="display:flex;"><span>  behavior and not rely on setting a policy to OLD.
</span></span><span style="display:flex;"><span>Call Stack <span style="color:#f92672">(</span>most recent call first<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  interpreter/llvm-project/clang/CMakeLists.txt:6 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Warning <span style="color:#f92672">(</span>dev<span style="color:#f92672">)</span> at interpreter/llvm-project/clang/CMakeLists.txt:405 <span style="color:#f92672">(</span>install<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  Policy CMP0177 is not set: install<span style="color:#f92672">()</span> DESTINATION paths are normalized.  Run
</span></span><span style="display:flex;"><span>  <span style="color:#e6db74">&#34;cmake --help-policy CMP0177&#34;</span> <span style="color:#66d9ef">for</span> policy details.  Use the cmake_policy
</span></span><span style="display:flex;"><span>  command to set the policy and suppress this warning.
</span></span><span style="display:flex;"><span>This warning is <span style="color:#66d9ef">for</span> project developers.  Use -Wno-dev to suppress it.
</span></span></code></pre></div><p>安装 xrootd davix。不折腾这个了，放弃，改用包管理器安装。</p>
<h2 id="安装geant4">安装Geant4</h2>
<p>这里也用简单方法了，从源码构建就放在第一篇帖子里面折腾吧。</p>
<h3 id="总结">总结</h3>
<p><a href="https://geant4-userdoc.web.cern.ch/UsersGuides/InstallationGuide/html/">https://geant4-userdoc.web.cern.ch/UsersGuides/InstallationGuide/html/</a> &ldquo;Arch Users Repository on Arch Linux&quot;处跟着走，
先安装一下依赖，由于有一些依赖官方仓库里面没有，因此可以使用aur助手<a href="https://github.com/Jguer/yay">yay</a>安装aur的包。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>sudo pacman -S --needed git base-devel
</span></span><span style="display:flex;"><span>git clone https://aur.archlinux.org/yay.git
</span></span><span style="display:flex;"><span>cd yay
</span></span><span style="display:flex;"><span>makepkg -si
</span></span></code></pre></div><p>yay安装完之后，使用yay安装clhep</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>yay -S clhep
</span></span></code></pre></div><p>根据提示按回车即可。
使用pacman安装其他的依赖（也可以用yay安装）</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>sudo pacman -S xerces-c qt6-base openmotif soqt boost
</span></span><span style="display:flex;"><span>sudo pacman -S qt5-base qt5-tools qt5-svg mesa glu
</span></span></code></pre></div><p>然后跟着官方教程走。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>git clone https://aur.archlinux.org/geant4.git
</span></span><span style="display:flex;"><span>cd geant4
</span></span></code></pre></div><p>如果cmake版本过高，后面可能会报错，先修改一下PKGBUILD里面的cmake设置。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>nano PKGBUILD
</span></span></code></pre></div><p>把“-DCMAKE_POLICY_VERSION_MINIMUM=3.5”加载cmake那一堆里。或者</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>sudo nano /usr/lib/cmake/Coin-4.0.3/coin-config.cmake
</span></span></code></pre></div><p>把“cmake_minimum_required(VERSION 2.8.12)”注释掉，也就是在这一行前面加上#。</p>
<p>然后继续，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>makepkg --syncdeps
</span></span></code></pre></div><p>运行完之后得到一个名为geant4-<!-- raw HTML omitted -->-x86_64.pkg.tar 的文件，例如我的是geant4-11.3.1-1-x86_64.pkg.tar，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>sudo pacman -U geant4-11.3.1-1-x86_64.pkg.tar
</span></span></code></pre></div><p>差了一步，还得下载data文件，在官网下载所有data文件。把文件解压到/usr/sbin/../share/Geant4/目录下，然后在终端中配置环境，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>nano ~/.bashrc 
</span></span></code></pre></div><p>将“source geant4/pkg/geant4/usr/bin/geant4.sh” 添加到最后。</p>
<h3 id="报错-1">报错</h3>
<p>makepkg &ndash;syncdeps 一步出现报错：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span>nine@DESKTOP-VL1ESD8 geant4<span style="color:#f92672">]</span>$ makepkg --syncdeps
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Making package: geant4 11.3.1-1 <span style="color:#f92672">(</span>Thu Jul  <span style="color:#ae81ff">3</span> 20:40:04 2025<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Checking runtime dependencies...
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Installing missing dependencies...
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span>sudo<span style="color:#f92672">]</span> password <span style="color:#66d9ef">for</span> nine:
</span></span><span style="display:flex;"><span>error: target not found: clhep&gt;<span style="color:#f92672">=</span>2.4.6.0
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; ERROR: <span style="color:#e6db74">&#39;pacman&#39;</span> failed to install missing dependencies.
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Missing dependencies:
</span></span><span style="display:flex;"><span>  -&gt; clhep&gt;<span style="color:#f92672">=</span>2.4.6.0
</span></span><span style="display:flex;"><span>  -&gt; xerces-c&gt;<span style="color:#f92672">=</span><span style="color:#ae81ff">3</span>
</span></span><span style="display:flex;"><span>  -&gt; qt6-base
</span></span><span style="display:flex;"><span>  -&gt; openmotif
</span></span><span style="display:flex;"><span>  -&gt; soqt
</span></span><span style="display:flex;"><span>  -&gt; boost
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Checking buildtime dependencies...
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; ERROR: Could not resolve all dependencies.
</span></span></code></pre></div><p>应该是缺少这些依赖。pacman安装找不到clhep，这才发现我忘换镜像源了。把换镜像源放在第一步。
安装一下yay，再用yay安装这些pacman中没有的依赖。
依赖安装完之后makepkg &ndash;syncdeps继续报错，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>CMake Error at /usr/lib/cmake/Coin-4.0.3/coin-config.cmake:1 <span style="color:#f92672">(</span>cmake_minimum_required<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  Compatibility with CMake &lt; 3.5 has been removed from CMake.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  Update the VERSION argument &lt;min&gt; value.  Or, use the &lt;min&gt;...&lt;max&gt; syntax
</span></span><span style="display:flex;"><span>  to tell CMake that the project requires at least &lt;min&gt; but has been updated
</span></span><span style="display:flex;"><span>  to work with policies introduced by &lt;max&gt; or earlier.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>  Or, add -DCMAKE_POLICY_VERSION_MINIMUM<span style="color:#f92672">=</span>3.5 to try configuring anyway.
</span></span><span style="display:flex;"><span>Call Stack <span style="color:#f92672">(</span>most recent call first<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  cmake/Modules/G4InterfaceOptions.cmake:127 <span style="color:#f92672">(</span>find_package<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  cmake/Modules/G4CMakeMain.cmake:64 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  CMakeLists.txt:49 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>-- Configuring incomplete, errors occurred!
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; ERROR: A failure occurred in build<span style="color:#f92672">()</span>.
</span></span><span style="display:flex;"><span>    Aborting...
</span></span></code></pre></div><p>ai说是cmake版本太高。用yay安装Geant4可以先执行</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># bash</span>
</span></span><span style="display:flex;"><span>yay -S coin --editmenu   <span style="color:#75715e">#我也不知道这一步干什么的</span>
</span></span><span style="display:flex;"><span>nano PKGBUILD
</span></span></code></pre></div><p>把“-DCMAKE_POLICY_VERSION_MINIMUM=3.5”加载cmake那一堆里。</p>
]]></content>
        </item>
        
        <item>
            <title>通过源码安装Geant4</title>
            <link>https://asagi.moe/posts/1_geant4_installation/</link>
            <pubDate>Sat, 21 Jun 2025 00:00:00 +0000</pubDate>
            
            <guid>https://asagi.moe/posts/1_geant4_installation/</guid>
            <description>&lt;p&gt;今天拿我师兄的Geant4模拟在mac运行又运行不了了，折腾后发现似乎要重装Geant4。虽然Geant4我不会用，但是安装Geant4我还是蛮有经验的！我在ubuntu、arch、mac上都多次安装过Geant4，所以趁这个机会，就把安装Geant4作为我的第一篇帖子吧。&lt;/p&gt;
&lt;h2 id=&#34;官方教程&#34;&gt;官方教程&lt;/h2&gt;
&lt;p&gt;我是计算机小白，如果有想将这篇帖子作为教程来安装Geant4的话还是有很大的风险的，所以还是以官方教程为准，这里说点题外话，我在折腾arch的时候，每次遇到问题去问师兄A，他会让我去查arch的wiki，去问师兄B，他会让我去问ai，我现在每次想问他们问题的时候，都会选择直接去问ai还有查wiki了，所以大家也要养成自己查wiki的好习惯！有很多问题其实仔细查阅wiki都能自己解决的。现在的ai很强大了，就算wiki上查不到，去问ai也是可以解决大部分问题的，当然这些都是我根据个人经验来看是这样的。不过上面提到的两个师兄人其实是非常好的，只能说他们让我体会到什么叫作”授人以鱼不如授人以渔“。&lt;/p&gt;
&lt;p&gt;打开Geant4官网&lt;a href=&#34;https://geant4.web.cern.ch/&#34;&gt;https://geant4.web.cern.ch/&lt;/a&gt;，选择Docs项，&lt;img src=&#34;https://asagi.moe/geant4/geant4.jpg&#34; alt=&#34;Geant4主页&#34; title=&#34;Geant4主页&#34;&gt;&lt;/p&gt;
&lt;p&gt;然后选择&lt;a href=&#34;https://geant4-userdoc.web.cern.ch/UsersGuides/InstallationGuide/html/index.html&#34;&gt;Installation Guide&lt;/a&gt;，&lt;img src=&#34;https://asagi.moe/geant4/docs.png&#34; alt=&#34;docs&#34; title=&#34;docs&#34;&gt;&lt;/p&gt;
&lt;p&gt;这里就是如何安装Geant4的官方教程。&lt;img src=&#34;https://asagi.moe/geant4/installationGuide.png&#34; alt=&#34;installation&#34; title=&#34;installation&#34;&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;macos&#34;&gt;MacOS&lt;/h2&gt;
&lt;p&gt;跟着大佬学着列一下我的设备和环境：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;MacBookPro(M2 2022)&lt;/li&gt;
&lt;li&gt;OS: macOS 14.4.1 23E224 arm64&lt;/li&gt;
&lt;li&gt;Shell: zsh 5.9&lt;/li&gt;
&lt;li&gt;Homebrew 4.5.8&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;总结&#34;&gt;总结&lt;/h3&gt;
&lt;p&gt;为了省流，我把总结放在前面，我自己安装时候的记录放在了后面。&lt;/p&gt;
&lt;h4 id=&#34;1-下载geant4源码和相关依赖&#34;&gt;1. &lt;strong&gt;下载Geant4源码和相关依赖&lt;/strong&gt;&lt;/h4&gt;
&lt;p&gt;在Geant4官网&lt;a href=&#34;https://geant4.web.cern.ch/&#34;&gt;https://geant4.web.cern.ch/&lt;/a&gt;主页的Download内下载&amp;quot;Source code&amp;quot;(我下载的是&amp;quot;tar&amp;quot;)，还有&amp;quot;Datasets&amp;quot;下的所有数据。
相关依赖我能记得的只有qt5、cmake了，qt需要安装吗？先就安装这三个吧。xerces-c是GDML的依赖，因为我后面开启了GDML，如果不开启的话应该不需要安装xerces-c。不过看到有大佬安装提到了CLHEP，我不清楚这个是否需要安装，去可能是CLHEP的&lt;a href=&#34;https://www.hep.ucl.ac.uk/pbt/wiki/Software/Geant4/Installation/CLHEP&#34;&gt;wiki&lt;/a&gt;上看了一眼，似乎不是必须要手动安装的？总之安装一下也无妨。打开终端，&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-zsh&#34; data-lang=&#34;zsh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;brew install cmake
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;brew install clhep
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;brew install qt
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;brew install qt5
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;brew install xerces-c
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后解压下载的源码。这里我把源码解压到主目录下新建的文件夹Geant4中。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-zsh&#34; data-lang=&#34;zsh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cd ~
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;mkdir Geant4
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cd Geant4
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;tar -xf ~/Downloads/geant4-v11.3.2.tar 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&amp;ldquo;geant4-v11.3.2.tar&amp;quot;是我下载的Geant4源码压缩包的文件名，请修改成自己下载的压缩包的文件名。&lt;/p&gt;
&lt;h4 id=&#34;2-配置qt5环境&#34;&gt;2. &lt;strong&gt;配置qt5环境&lt;/strong&gt;&lt;/h4&gt;
&lt;p&gt;终端内输入&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-zsh&#34; data-lang=&#34;zsh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;nano ~/.zshrc
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;我这里用的文本编辑器是nano，MacOS似乎默认包含nano，如果没有也可以用brew安装一下，也可以选择其他文本编辑器。执行上面的命令之后将下面的4行代码写入到文件内，然后按control+x退出，输入y按两次回车保存。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;export LDFLAGS=&amp;#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib${LDFLAGS:+:$LDFLAGS}&amp;#34;
export CPPFLAGS=&amp;#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include${CPPFLAGS:+:$CPPFLAGS}&amp;#34;
export PKG_CONFIG_PATH=&amp;#34;/opt/homebrew/Cellar/qt@5/5.15.13_1/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}&amp;#34;
export PATH=&amp;#34;/opt/homebrew/opt/qt@5/bin${PATH:+:}$PATH&amp;#34;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;退出之后source一下&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-zsh&#34; data-lang=&#34;zsh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;source ~/.zshrc
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h4 id=&#34;3-编译安装&#34;&gt;3. &lt;strong&gt;编译安装&lt;/strong&gt;&lt;/h4&gt;
&lt;p&gt;我想在主目录下刚刚新建的Geant4文件夹内安装Geant4，所以就先在这个文件夹内新建一个build文件夹和一个install文件夹。&lt;/p&gt;</description>
            <content type="html"><![CDATA[<p>今天拿我师兄的Geant4模拟在mac运行又运行不了了，折腾后发现似乎要重装Geant4。虽然Geant4我不会用，但是安装Geant4我还是蛮有经验的！我在ubuntu、arch、mac上都多次安装过Geant4，所以趁这个机会，就把安装Geant4作为我的第一篇帖子吧。</p>
<h2 id="官方教程">官方教程</h2>
<p>我是计算机小白，如果有想将这篇帖子作为教程来安装Geant4的话还是有很大的风险的，所以还是以官方教程为准，这里说点题外话，我在折腾arch的时候，每次遇到问题去问师兄A，他会让我去查arch的wiki，去问师兄B，他会让我去问ai，我现在每次想问他们问题的时候，都会选择直接去问ai还有查wiki了，所以大家也要养成自己查wiki的好习惯！有很多问题其实仔细查阅wiki都能自己解决的。现在的ai很强大了，就算wiki上查不到，去问ai也是可以解决大部分问题的，当然这些都是我根据个人经验来看是这样的。不过上面提到的两个师兄人其实是非常好的，只能说他们让我体会到什么叫作”授人以鱼不如授人以渔“。</p>
<p>打开Geant4官网<a href="https://geant4.web.cern.ch/">https://geant4.web.cern.ch/</a>，选择Docs项，<img src="/geant4/geant4.jpg" alt="Geant4主页" title="Geant4主页"></p>
<p>然后选择<a href="https://geant4-userdoc.web.cern.ch/UsersGuides/InstallationGuide/html/index.html">Installation Guide</a>，<img src="/geant4/docs.png" alt="docs" title="docs"></p>
<p>这里就是如何安装Geant4的官方教程。<img src="/geant4/installationGuide.png" alt="installation" title="installation"></p>
<hr>
<h2 id="macos">MacOS</h2>
<p>跟着大佬学着列一下我的设备和环境：</p>
<ul>
<li>MacBookPro(M2 2022)</li>
<li>OS: macOS 14.4.1 23E224 arm64</li>
<li>Shell: zsh 5.9</li>
<li>Homebrew 4.5.8</li>
</ul>
<h3 id="总结">总结</h3>
<p>为了省流，我把总结放在前面，我自己安装时候的记录放在了后面。</p>
<h4 id="1-下载geant4源码和相关依赖">1. <strong>下载Geant4源码和相关依赖</strong></h4>
<p>在Geant4官网<a href="https://geant4.web.cern.ch/">https://geant4.web.cern.ch/</a>主页的Download内下载&quot;Source code&quot;(我下载的是&quot;tar&quot;)，还有&quot;Datasets&quot;下的所有数据。
相关依赖我能记得的只有qt5、cmake了，qt需要安装吗？先就安装这三个吧。xerces-c是GDML的依赖，因为我后面开启了GDML，如果不开启的话应该不需要安装xerces-c。不过看到有大佬安装提到了CLHEP，我不清楚这个是否需要安装，去可能是CLHEP的<a href="https://www.hep.ucl.ac.uk/pbt/wiki/Software/Geant4/Installation/CLHEP">wiki</a>上看了一眼，似乎不是必须要手动安装的？总之安装一下也无妨。打开终端，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>brew install cmake
</span></span><span style="display:flex;"><span>brew install clhep
</span></span><span style="display:flex;"><span>brew install qt
</span></span><span style="display:flex;"><span>brew install qt5
</span></span><span style="display:flex;"><span>brew install xerces-c
</span></span></code></pre></div><p>然后解压下载的源码。这里我把源码解压到主目录下新建的文件夹Geant4中。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>cd ~
</span></span><span style="display:flex;"><span>mkdir Geant4
</span></span><span style="display:flex;"><span>cd Geant4
</span></span><span style="display:flex;"><span>tar -xf ~/Downloads/geant4-v11.3.2.tar 
</span></span></code></pre></div><p>&ldquo;geant4-v11.3.2.tar&quot;是我下载的Geant4源码压缩包的文件名，请修改成自己下载的压缩包的文件名。</p>
<h4 id="2-配置qt5环境">2. <strong>配置qt5环境</strong></h4>
<p>终端内输入</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>nano ~/.zshrc
</span></span></code></pre></div><p>我这里用的文本编辑器是nano，MacOS似乎默认包含nano，如果没有也可以用brew安装一下，也可以选择其他文本编辑器。执行上面的命令之后将下面的4行代码写入到文件内，然后按control+x退出，输入y按两次回车保存。</p>
<pre tabindex="0"><code>export LDFLAGS=&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib${LDFLAGS:+:$LDFLAGS}&#34;
export CPPFLAGS=&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include${CPPFLAGS:+:$CPPFLAGS}&#34;
export PKG_CONFIG_PATH=&#34;/opt/homebrew/Cellar/qt@5/5.15.13_1/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}&#34;
export PATH=&#34;/opt/homebrew/opt/qt@5/bin${PATH:+:}$PATH&#34;
</code></pre><p>退出之后source一下</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>source ~/.zshrc
</span></span></code></pre></div><h4 id="3-编译安装">3. <strong>编译安装</strong></h4>
<p>我想在主目录下刚刚新建的Geant4文件夹内安装Geant4，所以就先在这个文件夹内新建一个build文件夹和一个install文件夹。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>cd ~/Geant4
</span></span><span style="display:flex;"><span>mkdir G4_build G4_install
</span></span><span style="display:flex;"><span>ls
</span></span><span style="display:flex;"><span>cd G4_build
</span></span><span style="display:flex;"><span>cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>~/Geant4/G4_install -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>OFF -DGEANT4_USE_GDML<span style="color:#f92672">=</span>ON -DGEANT4_BUILD_MULTITHREADED<span style="color:#f92672">=</span>ON -DGEANT4_USE_QT<span style="color:#f92672">=</span>ON ~/Geant4/geant4-v11.3.2
</span></span></code></pre></div><p>”-DCMAKE_INSTALL_PREFIX= ~/Geant4/G4_install“和”-DGEANT4_USE_QT= ON ~/Geant4/geant4-v11.3.2“中间的内容是设置开关Geant4的一些选项，可以在Geant4安装教程的standard options内查询相关功能的介绍，开关其他功能需要输入”-D“+选项的名字+”=ON/OFF“。安装完之后如果需要开启某些选项，需要重新cmake，所以源码不要删。cmake这一步会弹出一堆输出，大致内容就是关于data文件的，可以先不管，如果是其他报错建议复制报错给ai或者网上搜索。cmake结束后，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>make -j4
</span></span></code></pre></div><p>make -jN &ldquo;where is the number of parallel jobs you require N&rdquo;，N是同时并行的任务数，和CPU核心数有关。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>make install
</span></span></code></pre></div><p>上述两个命令运行的时候都要注意输出的waring。</p>
<h4 id="4-创建data文件">4. <strong>创建DATA文件</strong></h4>
<p>可以把下载的DATA文件先随便放在一个文件夹中，比如我放在Downloads下的G4DATA文件夹内，然后终端输入，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>cp ~/Downloads/G4DATA/* ~/Geant4/G4_install/share/Geant4/data
</span></span><span style="display:flex;"><span>cd ~/Geant4/G4_install/share/Geant4/data
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span> tar in *.tar.gz;  <span style="color:#66d9ef">do</span> tar xvf $tar; <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>rm *.tar.gz
</span></span><span style="display:flex;"><span>ls
</span></span></code></pre></div><p>不过要注意下载的DATA文件后缀是不是tar.gz，或者不用上面的命令，直接用Finder去文件夹里面将数据文件解压后复制到Geant4安装目录下的share/Geant4/data文件夹内。上面的ls命令是为了看data文件是否是完整的。</p>
<h4 id="5-配置geant4环境">5. <strong>配置Geant4环境</strong></h4>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>nano ~/.zshrc
</span></span></code></pre></div><p>在最后面写入</p>
<pre tabindex="0"><code>source ~/Geant4/G4_install/bin/geant4.sh
</code></pre><p>上述路径都以自己的为准。保存退出之后source一下.zshrc，或者重启一下终端。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>source ~/.zshrc
</span></span></code></pre></div><h4 id="6-运行example-b1">6. <strong>运行example B1</strong></h4>
<p>运行一下example B1看有没有安装成功。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>cd ~/Geant4
</span></span><span style="display:flex;"><span>cp -r G4_install/share/Geant4/examples/basic G4_examples
</span></span><span style="display:flex;"><span>cd G4_examples
</span></span><span style="display:flex;"><span>mkdir B1_build
</span></span><span style="display:flex;"><span>cd B1_build
</span></span><span style="display:flex;"><span>cmake ../B1
</span></span><span style="display:flex;"><span>make -j4
</span></span><span style="display:flex;"><span>./exampleB1
</span></span></code></pre></div><p>出现下图一样的可视化窗口就说明Geant4安装成功了。
<img src="/geant4/B1.png" alt="exampleB1" title="exampleB1">
如果有其他问题可以在<a href="https://b23.tv/5W03nDb">B站</a>私信我，一起讨论共同成长。</p>
<h3 id="踩坑">踩坑</h3>
<p>先在官网下载源码和所有DATA文件，mac上面我下载下来的文件名字是&quot;Darwin-clang17.0.0-Sequoia.tar.gz&rdquo;，根据官方教程第一步是解压这个文件到想要的位置。先在主目录下新建一个文件夹，然后解压，在终端中输入下面的命令。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>cd 
</span></span><span style="display:flex;"><span>mkdir Geant4
</span></span><span style="display:flex;"><span>cd Geant4
</span></span><span style="display:flex;"><span>tar -xzf ~/Downloads/Darwin-clang17.0.0-Sequoia.tar.gz
</span></span></code></pre></div><p>第二步是新建一个build文件夹并且进入，然后运行cmake，我顺便再新建一下install文件夹，接着上面的命令继续输入，不要退出终端。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>mkdir G4_install G4_build
</span></span><span style="display:flex;"><span>cd G4_build
</span></span><span style="display:flex;"><span>cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>~/Geant4/G4_install ~/Geant4/Geant4-11.3.2-Darwin
</span></span></code></pre></div><p>报错如下。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>CMake Warning:
</span></span><span style="display:flex;"><span>  Ignoring extra path from command line:
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>   <span style="color:#e6db74">&#34;/Users/ninependoragon/Geant4/Geant4-11.3.2-Darwin&#34;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Error: The source directory <span style="color:#e6db74">&#34;/Users/ninependoragon/Geant4/Geant4-11.3.2-Darwin&#34;</span> does not appear to contain CMakeLists.txt.
</span></span><span style="display:flex;"><span>Specify --help <span style="color:#66d9ef">for</span> usage, or press the help button on the CMake GUI.
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % 
</span></span></code></pre></div><p>复制下来去问ai，结果发现是我下错源码了，我下载错成Binary releases了。。。
OK，下载好源码之后重新跑一遍上面的代码。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cd ..  
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % ls
</span></span><span style="display:flex;"><span>G4_build		G4_install		Geant4-11.3.2-Darwin
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % rm -rf Geant4-11.3.2-Darwin 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % cd G4_build 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % tar ~/Downloads/geant4-v11.3.2.tar 
</span></span><span style="display:flex;"><span>Usage:
</span></span><span style="display:flex;"><span>  List:    tar -tf &lt;archive-filename&gt;
</span></span><span style="display:flex;"><span>  Extract: tar -xf &lt;archive-filename&gt;
</span></span><span style="display:flex;"><span>  Create:  tar -cf &lt;archive-filename&gt; <span style="color:#f92672">[</span>filenames...<span style="color:#f92672">]</span>
</span></span><span style="display:flex;"><span>  Help:    tar --help
</span></span></code></pre></div><p>似乎是tar没加-xf，但是上面为什么是接-xzf，直接问ai。z是gzip，因为上面解压的文件有后缀.gz，但是如果有后缀.gz，不用-xzf就不能解压吗？
我回头试了一下<code>tar -xf ~/Downloads/Darwin-clang17.0.0-Sequoia.tar.gz</code>，然而还是可以解压。ChatGPT告诉我我的tar是智能版，可以自动调用gzip解压，不知道有没有在骗我。回到正题。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cd ..
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % ls
</span></span><span style="display:flex;"><span>G4_build	G4_install
</span></span></code></pre></div><p>Geant4-11.3.2-Darwin我已经删除，这里我用ls检查一下有没有删掉。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % tar -xf ~/Downloads/geant4-v11.3.2.tar
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % ls
</span></span><span style="display:flex;"><span>G4_build	G4_install	geant4-v11.3.2
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % cd G4_build 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>~/Geant4/G4_install ~/Geant4/geant4-v11.3.2
</span></span><span style="display:flex;"><span>-- The C compiler identification is AppleClang 15.0.0.15000309
</span></span><span style="display:flex;"><span>-- The CXX compiler identification is AppleClang 15.0.0.15000309
</span></span><span style="display:flex;"><span>-- Detecting C compiler ABI info
</span></span><span style="display:flex;"><span>-- Detecting C compiler ABI info - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Check <span style="color:#66d9ef">for</span> working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
</span></span><span style="display:flex;"><span>-- Detecting C compile features
</span></span><span style="display:flex;"><span>-- Detecting C compile features - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Detecting CXX compiler ABI info
</span></span><span style="display:flex;"><span>-- Detecting CXX compiler ABI info - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Check <span style="color:#66d9ef">for</span> working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
</span></span><span style="display:flex;"><span>-- Detecting CXX compile features
</span></span><span style="display:flex;"><span>-- Detecting CXX compile features - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Checking C++ feature CXXSTDLIB_FILESYSTEM_NATIVE - Success
</span></span><span style="display:flex;"><span>-- Performing Test HAVE_TLS
</span></span><span style="display:flex;"><span>-- Performing Test HAVE_TLS - Success
</span></span><span style="display:flex;"><span>-- Found EXPAT: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/lib/libexpat.tbd <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;2.5.0&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4NDL <span style="color:#f92672">(</span>4.7.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4EMLOW <span style="color:#f92672">(</span>8.6.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset PhotonEvaporation <span style="color:#f92672">(</span>6.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset RadioactiveDecay <span style="color:#f92672">(</span>6.1.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4PARTICLEXS <span style="color:#f92672">(</span>4.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4PII <span style="color:#f92672">(</span>1.3<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset RealSurface <span style="color:#f92672">(</span>2.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4SAIDDATA <span style="color:#f92672">(</span>2.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4ABLA <span style="color:#f92672">(</span>3.3<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4INCL <span style="color:#f92672">(</span>1.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4ENSDFSTATE <span style="color:#f92672">(</span>3.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4CHANNELING <span style="color:#f92672">(</span>1.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  *WARNING*
</span></span><span style="display:flex;"><span>    Geant4 has been pre-configured to look <span style="color:#66d9ef">for</span> datasets
</span></span><span style="display:flex;"><span>    in the directory:
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span>    /Users/ninependoragon/Geant4/G4_install/share/Geant4/data
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span>    but the following datasets are NOT present on disk at
</span></span><span style="display:flex;"><span>    that location:
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span>    G4NDL <span style="color:#f92672">(</span>4.7.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4EMLOW <span style="color:#f92672">(</span>8.6.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    PhotonEvaporation <span style="color:#f92672">(</span>6.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    RadioactiveDecay <span style="color:#f92672">(</span>6.1.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4PARTICLEXS <span style="color:#f92672">(</span>4.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4PII <span style="color:#f92672">(</span>1.3<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    RealSurface <span style="color:#f92672">(</span>2.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4SAIDDATA <span style="color:#f92672">(</span>2.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4ABLA <span style="color:#f92672">(</span>3.3<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4INCL <span style="color:#f92672">(</span>1.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4ENSDFSTATE <span style="color:#f92672">(</span>3.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4CHANNELING <span style="color:#f92672">(</span>1.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span> -  If you have access to cvmfs, you can use standard datasets
</span></span><span style="display:flex;"><span>    by reconfiguring with:
</span></span><span style="display:flex;"><span>      cmake -DGEANT4_INSTALL_DATADIR<span style="color:#f92672">=</span>/cvmfs/geant4.cern.ch/share/data &lt;...&gt;
</span></span><span style="display:flex;"><span>    The variable can also be set in ccmake or cmake-gui.
</span></span><span style="display:flex;"><span> -  If you want to have these datasets installed by Geant4,
</span></span><span style="display:flex;"><span>    simply re-run cmake with GEANT4_INSTALL_DATA<span style="color:#f92672">=</span>ON. This will
</span></span><span style="display:flex;"><span>    configure the build to download and install these datasets <span style="color:#66d9ef">for</span> you.
</span></span><span style="display:flex;"><span>    For example, use:
</span></span><span style="display:flex;"><span>      cmake -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>ON &lt;otherargs&gt;
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span>    If you<span style="color:#e6db74">&#39;re running on a Windows system, this is the best
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    solution as CMake will unpack the datasets for you
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    without any further software being required
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> -  Alternatively, you can install these datasets manually
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    now or after you have installed Geant4. To do this,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    download the following files:
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4NDL.4.7.1.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4EMLOW.8.6.1.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4PhotonEvaporation.6.1.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4RadioactiveDecay.6.1.2.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4PARTICLEXS.4.1.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4PII.1.3.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4RealSurface.2.2.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4SAIDDATA.2.0.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4ABLA.3.3.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4INCL.1.2.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4ENSDFSTATE.3.0.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4CHANNELING.1.0.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    and unpack them under the directory:
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    /Users/ninependoragon/Geant4/G4_install/share/Geant4/data
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    As we supply the datasets packed in gzipped tar files,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    you will need the &#39;</span>tar<span style="color:#e6db74">&#39; utility to unpack them.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    Nota bene: Missing datasets will not affect or break
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               compilation and installation of the Geant4
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               libraries.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for sys/types.h
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for sys/types.h - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for stdint.h
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for stdint.h - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for stddef.h
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for stddef.h - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Check size of off64_t
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Check size of off64_t - failed
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for fseeko
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for fseeko - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for unistd.h
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for unistd.h - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test G4ZLIB_NEEDS_DNP
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test G4ZLIB_NEEDS_DNP - Success
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option BUILD_STATIC_LIBS - OFF
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option BUILD_SHARED_LIBS - ON
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option BUILD_OBJECT_LIBS - 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with CMAKE_CXX_STANDARD - 17
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_COVERAGE - 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_SANITIZER - 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_CLANG_TIDY - 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_TBB - OFF
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_LOCKS - OFF
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_INSTALL_HEADERS - ON
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_INSTALL_CONFIG - ON
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Found Threads: TRUE
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- The following Geant4 features are enabled:
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">CMAKE_CXX_STANDARD: Compiling against C++ Standard &#39;</span>17<span style="color:#e6db74">&#39;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">GEANT4_BUILD_MULTITHREADED: Build multithread enabled libraries
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">GEANT4_BUILD_TLS_MODEL: Building with TLS model &#39;</span>initial-exec<span style="color:#960050;background-color:#1e0010">&#39;</span>
</span></span><span style="display:flex;"><span>GEANT4_USE_SYSTEM_EXPAT: Using system EXPAT library
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>-- Configuring <span style="color:#66d9ef">done</span> <span style="color:#f92672">(</span>2.6s<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Generating <span style="color:#66d9ef">done</span> <span style="color:#f92672">(</span>0.5s<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Build files have been written to: /Users/ninependoragon/Geant4/G4_build
</span></span></code></pre></div><p>这个报错和官方教程提到的一模一样，应该就是DATA文件缺失，DATA文件也是在官网的<a href="https://geant4.web.cern.ch/download/11.3.2.html">Download</a>界面下载，我前面已经下载过了，按照教程，应该是需要解压到~/Geant4/G4_install/share/Geant4/data文件夹下，/Users/ninependoragon路径中ninependoragon是我的用户名，如果真的有萌新跟着这篇帖子来安装Geant4的话，请注意把这个改成自己的用户名。不过我记得是得先make完之后再添加data文件。教程下一步是在cmake中激活Geant4的一些功能。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>cmake -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>ON
</span></span></code></pre></div><p>这个功能是自动下载DATA文件，很久以前我第一次安装Geant4的时候好像有人告诉过我这个一般就选off关掉，当然默认是关掉。所以我没有运行上面的命令。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cmake -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>OFF -DGEANT4_USE_GDML<span style="color:#f92672">=</span>ON -GEANT4_BUILD_MULTITHREADED<span style="color:#f92672">=</span>ON
</span></span><span style="display:flex;"><span>CMake Error: Could not create named generator EANT4_BUILD_MULTITHREADED<span style="color:#f92672">=</span>ON
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>Generators
</span></span><span style="display:flex;"><span>* Unix Makefiles               <span style="color:#f92672">=</span> Generates standard UNIX makefiles.
</span></span><span style="display:flex;"><span>  Ninja                        <span style="color:#f92672">=</span> Generates build.ninja files.
</span></span><span style="display:flex;"><span>  Ninja Multi-Config           <span style="color:#f92672">=</span> Generates build-&lt;Config&gt;.ninja files.
</span></span><span style="display:flex;"><span>  Watcom WMake                 <span style="color:#f92672">=</span> Generates Watcom WMake makefiles.
</span></span><span style="display:flex;"><span>  Xcode                        <span style="color:#f92672">=</span> Generate Xcode project files.
</span></span><span style="display:flex;"><span>  CodeBlocks - Ninja           <span style="color:#f92672">=</span> Generates CodeBlocks project files
</span></span><span style="display:flex;"><span>                                 <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  CodeBlocks - Unix Makefiles  <span style="color:#f92672">=</span> Generates CodeBlocks project files
</span></span><span style="display:flex;"><span>                                 <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  CodeLite - Ninja             <span style="color:#f92672">=</span> Generates CodeLite project files
</span></span><span style="display:flex;"><span>                                 <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  CodeLite - Unix Makefiles    <span style="color:#f92672">=</span> Generates CodeLite project files
</span></span><span style="display:flex;"><span>                                 <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  Eclipse CDT4 - Ninja         <span style="color:#f92672">=</span> Generates Eclipse CDT 4.0 project files
</span></span><span style="display:flex;"><span>                                 <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  Eclipse CDT4 - Unix Makefiles<span style="color:#f92672">=</span> Generates Eclipse CDT 4.0 project files
</span></span><span style="display:flex;"><span>                                 <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  Kate - Ninja                 <span style="color:#f92672">=</span> Generates Kate project files <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  Kate - Ninja Multi-Config    <span style="color:#f92672">=</span> Generates Kate project files <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  Kate - Unix Makefiles        <span style="color:#f92672">=</span> Generates Kate project files <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  Sublime Text <span style="color:#ae81ff">2</span> - Ninja       <span style="color:#f92672">=</span> Generates Sublime Text <span style="color:#ae81ff">2</span> project files
</span></span><span style="display:flex;"><span>                                 <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>  Sublime Text <span style="color:#ae81ff">2</span> - Unix Makefiles
</span></span><span style="display:flex;"><span>                               <span style="color:#f92672">=</span> Generates Sublime Text <span style="color:#ae81ff">2</span> project files
</span></span><span style="display:flex;"><span>                                 <span style="color:#f92672">(</span>deprecated<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>CMake Warning:
</span></span><span style="display:flex;"><span>  No source or binary directory provided.  Both will be assumed to be the
</span></span><span style="display:flex;"><span>  same as the current working directory, but note that this warning will
</span></span><span style="display:flex;"><span>  become a fatal error in future CMake releases.
</span></span></code></pre></div><p>似乎没有cmake成功，删掉这个build文件夹重来试试。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cd ..
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % rm -rf G4_build 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % mkdir G4_build
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % cd G4_build 
</span></span></code></pre></div><p>不过删除之后我发现好像是刚刚命令行输错了，-GEANT4_BUILD_MULTITHREADED=ON少了个D。。。，上面的操作应该是没有问题的，想加什么功能就重新cmake -D 就好了</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>~/Geant4/G4_install -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>OFF -DGEANT4_USE_GDML<span style="color:#f92672">=</span>ON -DGEANT4_BUILD_MULTITHREADED<span style="color:#f92672">=</span>ON ~/Geant4/geant4-v11.3.2
</span></span><span style="display:flex;"><span>-- The C compiler identification is AppleClang 15.0.0.15000309
</span></span><span style="display:flex;"><span>-- The CXX compiler identification is AppleClang 15.0.0.15000309
</span></span><span style="display:flex;"><span>-- Detecting C compiler ABI info
</span></span><span style="display:flex;"><span>-- Detecting C compiler ABI info - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Check <span style="color:#66d9ef">for</span> working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
</span></span><span style="display:flex;"><span>-- Detecting C compile features
</span></span><span style="display:flex;"><span>-- Detecting C compile features - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Detecting CXX compiler ABI info
</span></span><span style="display:flex;"><span>-- Detecting CXX compiler ABI info - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Check <span style="color:#66d9ef">for</span> working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
</span></span><span style="display:flex;"><span>-- Detecting CXX compile features
</span></span><span style="display:flex;"><span>-- Detecting CXX compile features - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Checking C++ feature CXXSTDLIB_FILESYSTEM_NATIVE - Success
</span></span><span style="display:flex;"><span>-- Performing Test HAVE_TLS
</span></span><span style="display:flex;"><span>-- Performing Test HAVE_TLS - Success
</span></span><span style="display:flex;"><span>-- Found EXPAT: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/lib/libexpat.tbd <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;2.5.0&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>CMake Error at /opt/homebrew/Cellar/cmake/3.29.3/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 <span style="color:#f92672">(</span>message<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  Failed to find XercesC <span style="color:#f92672">(</span>missing: XercesC_LIBRARY XercesC_INCLUDE_DIR
</span></span><span style="display:flex;"><span>  XercesC_VERSION<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>Call Stack <span style="color:#f92672">(</span>most recent call first<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>  /opt/homebrew/Cellar/cmake/3.29.3/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:600 <span style="color:#f92672">(</span>_FPHSA_FAILURE_MESSAGE<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  /opt/homebrew/Cellar/cmake/3.29.3/share/cmake/Modules/FindXercesC.cmake:112 <span style="color:#f92672">(</span>FIND_PACKAGE_HANDLE_STANDARD_ARGS<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  cmake/Modules/G4OptionalComponents.cmake:165 <span style="color:#f92672">(</span>find_package<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  cmake/Modules/G4CMakeMain.cmake:59 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  CMakeLists.txt:49 <span style="color:#f92672">(</span>include<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>-- Configuring incomplete, errors occurred!
</span></span></code></pre></div><p>其实我就是为了DGEANT4_USE_GDML才重新安装Geant4的，上次安装Geant4已经是两年前，源码那个时候不太懂所以应该是删掉了，不然重新cmake一下应该就行了。不过这里出现错误了，先复制给ai看看。“这是因为你开启了 -DGEANT4_USE_GDML=ON，Geant4 需要使用 Xerces-C++ 这个库来处理 GDML，但你本机没装这个库，或者 CMake 找不到它。”，那么就安装一个xerces-c吧。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % brew install xerces-c
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Downloading https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/api/formul
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Downloading https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/api/cask.j
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Fetching xerces-c
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/xerces-c-3.3.0.arm6
</span></span><span style="display:flex;"><span><span style="color:#75715e">######################################################################### 100.0%</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Pouring xerces-c-3.3.0.arm64_sonoma.bottle.tar.gz
</span></span><span style="display:flex;"><span>🍺  /opt/homebrew/Cellar/xerces-c/3.3.0: 1,715 files, 39.0MB
</span></span><span style="display:flex;"><span><span style="color:#f92672">==</span>&gt; Running <span style="color:#e6db74">`</span>brew cleanup xerces-c<span style="color:#e6db74">`</span>...
</span></span><span style="display:flex;"><span>Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
</span></span><span style="display:flex;"><span>Hide these hints with HOMEBREW_NO_ENV_HINTS <span style="color:#f92672">(</span>see <span style="color:#e6db74">`</span>man brew<span style="color:#e6db74">`</span><span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>~/Geant4/G4_install -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>OFF -DGEANT4_USE_GDML<span style="color:#f92672">=</span>ON -DGEANT4_BUILD_MULTITHREADED<span style="color:#f92672">=</span>ON ~/Geant4/geant4-v11.3.2
</span></span><span style="display:flex;"><span>-- Checking C++ feature CXXSTDLIB_FILESYSTEM_NATIVE - Success
</span></span><span style="display:flex;"><span>-- Found XercesC: /opt/homebrew/lib/libxerces-c.dylib <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;3.3.0&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4NDL <span style="color:#f92672">(</span>4.7.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4EMLOW <span style="color:#f92672">(</span>8.6.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset PhotonEvaporation <span style="color:#f92672">(</span>6.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset RadioactiveDecay <span style="color:#f92672">(</span>6.1.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4PARTICLEXS <span style="color:#f92672">(</span>4.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4PII <span style="color:#f92672">(</span>1.3<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset RealSurface <span style="color:#f92672">(</span>2.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4SAIDDATA <span style="color:#f92672">(</span>2.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4ABLA <span style="color:#f92672">(</span>3.3<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4INCL <span style="color:#f92672">(</span>1.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4ENSDFSTATE <span style="color:#f92672">(</span>3.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Pre-configuring dataset G4CHANNELING <span style="color:#f92672">(</span>1.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>  *WARNING*
</span></span><span style="display:flex;"><span>    Geant4 has been pre-configured to look <span style="color:#66d9ef">for</span> datasets
</span></span><span style="display:flex;"><span>    in the directory:
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span>    /Users/ninependoragon/Geant4/G4_install/share/Geant4/data
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span>    but the following datasets are NOT present on disk at
</span></span><span style="display:flex;"><span>    that location:
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span>    G4NDL <span style="color:#f92672">(</span>4.7.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4EMLOW <span style="color:#f92672">(</span>8.6.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    PhotonEvaporation <span style="color:#f92672">(</span>6.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    RadioactiveDecay <span style="color:#f92672">(</span>6.1.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4PARTICLEXS <span style="color:#f92672">(</span>4.1<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4PII <span style="color:#f92672">(</span>1.3<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    RealSurface <span style="color:#f92672">(</span>2.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4SAIDDATA <span style="color:#f92672">(</span>2.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4ABLA <span style="color:#f92672">(</span>3.3<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4INCL <span style="color:#f92672">(</span>1.2<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4ENSDFSTATE <span style="color:#f92672">(</span>3.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>    G4CHANNELING <span style="color:#f92672">(</span>1.0<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span> -  If you have access to cvmfs, you can use standard datasets
</span></span><span style="display:flex;"><span>    by reconfiguring with:
</span></span><span style="display:flex;"><span>      cmake -DGEANT4_INSTALL_DATADIR<span style="color:#f92672">=</span>/cvmfs/geant4.cern.ch/share/data &lt;...&gt;
</span></span><span style="display:flex;"><span>    The variable can also be set in ccmake or cmake-gui.
</span></span><span style="display:flex;"><span> -  If you want to have these datasets installed by Geant4,
</span></span><span style="display:flex;"><span>    simply re-run cmake with GEANT4_INSTALL_DATA<span style="color:#f92672">=</span>ON. This will
</span></span><span style="display:flex;"><span>    configure the build to download and install these datasets <span style="color:#66d9ef">for</span> you.
</span></span><span style="display:flex;"><span>    For example, use:
</span></span><span style="display:flex;"><span>      cmake -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>ON &lt;otherargs&gt;
</span></span><span style="display:flex;"><span> 
</span></span><span style="display:flex;"><span>    If you<span style="color:#e6db74">&#39;re running on a Windows system, this is the best
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    solution as CMake will unpack the datasets for you
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    without any further software being required
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> -  Alternatively, you can install these datasets manually
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    now or after you have installed Geant4. To do this,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    download the following files:
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4NDL.4.7.1.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4EMLOW.8.6.1.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4PhotonEvaporation.6.1.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4RadioactiveDecay.6.1.2.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4PARTICLEXS.4.1.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4PII.1.3.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4RealSurface.2.2.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4SAIDDATA.2.0.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4ABLA.3.3.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4INCL.1.2.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4ENSDFSTATE.3.0.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    https://cern.ch/geant4-data/datasets/G4CHANNELING.1.0.tar.gz
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    and unpack them under the directory:
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    /Users/ninependoragon/Geant4/G4_install/share/Geant4/data
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    As we supply the datasets packed in gzipped tar files,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    you will need the &#39;</span>tar<span style="color:#e6db74">&#39; utility to unpack them.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    Nota bene: Missing datasets will not affect or break
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               compilation and installation of the Geant4
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               libraries.
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for sys/types.h
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for sys/types.h - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for stdint.h
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for stdint.h - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for stddef.h
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for stddef.h - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Check size of off64_t
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Check size of off64_t - failed
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for fseeko
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for fseeko - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for unistd.h
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Looking for unistd.h - found
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test G4ZLIB_NEEDS_DNP
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test G4ZLIB_NEEDS_DNP - Success
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option BUILD_STATIC_LIBS - OFF
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option BUILD_SHARED_LIBS - ON
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option BUILD_OBJECT_LIBS - 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with CMAKE_CXX_STANDARD - 17
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_COVERAGE - 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_SANITIZER - 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_CLANG_TIDY - 
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_TBB - OFF
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_USE_LOCKS - OFF
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_INSTALL_HEADERS - ON
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Building PTL with option PTL_INSTALL_CONFIG - ON
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- Found Threads: TRUE
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">-- The following Geant4 features are enabled:
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">CMAKE_CXX_STANDARD: Compiling against C++ Standard &#39;</span>17<span style="color:#e6db74">&#39;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">GEANT4_BUILD_MULTITHREADED: Build multithread enabled libraries
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">GEANT4_BUILD_TLS_MODEL: Building with TLS model &#39;</span>initial-exec<span style="color:#960050;background-color:#1e0010">&#39;</span>
</span></span><span style="display:flex;"><span>GEANT4_USE_SYSTEM_EXPAT: Using system EXPAT library
</span></span><span style="display:flex;"><span>GEANT4_USE_GDML: Building Geant4 with GDML support
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>-- Configuring <span style="color:#66d9ef">done</span> <span style="color:#f92672">(</span>1.9s<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Generating <span style="color:#66d9ef">done</span> <span style="color:#f92672">(</span>0.5s<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Build files have been written to: /Users/ninependoragon/Geant4/G4_build
</span></span></code></pre></div><p>和之前差不多同样的输出。教程下一步是make。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % make
</span></span></code></pre></div><p>然后就是等待。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>...
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 88%<span style="color:#f92672">]</span> Building CXX object source/CMakeFiles/G4mctruth.dir/persistency/mctruth/src/G4VPHitsCollectionIO.cc.o
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 88%<span style="color:#f92672">]</span> Linking CXX shared library ../BuildProducts/lib/libG4mctruth.dylib
</span></span><span style="display:flex;"><span>ld: warning: search path <span style="color:#e6db74">&#39;/opt/homebrew/Cellar/qt@5/5.15.13_1/lib:&#39;</span> not found
</span></span><span style="display:flex;"><span>...
</span></span></code></pre></div><p>make过程中的报错，似乎是忘记安装qt5了。总之先继续下去吧，看能不能打开example B1。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % make install
</span></span></code></pre></div><p>继续等待。完成安装后</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cd ../G4_install/share/Geant4/
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % mkidr data
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % cp ~/Downloads/G4DATA/* ~/Geant4/G4_install/share/Geant4/data
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4ABLA3.3 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4CHANNELING1.0 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4EMLOW8.6.1 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4ENSDFSTATE3.0 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4INCL1.2 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4NDL4.7.1 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4NUDEXLIB1.0 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4PARTICLEXS4.1 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4PII1.3 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4SAIDDATA2.0 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4TENDL1.4 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/G4URRPT1.1 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/PhotonEvaporation6.1 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>cp: /Users/ninependoragon/Downloads/G4DATA/RadioactiveDecay6.1.2 is a directory <span style="color:#f92672">(</span>not copied<span style="color:#f92672">)</span>.
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % cd data 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro data % ls
</span></span><span style="display:flex;"><span>G4ABLA.3.3.tar.gz		G4PII.1.3.tar.gz
</span></span><span style="display:flex;"><span>G4CHANNELING.1.0.tar.gz		G4PhotonEvaporation.6.1.tar.gz
</span></span><span style="display:flex;"><span>G4EMLOW.8.6.1.tar.gz		G4RadioactiveDecay.6.1.2.tar.gz
</span></span><span style="display:flex;"><span>G4ENSDFSTATE.3.0.tar.gz		G4RealSurface.2.2.tar<span style="color:#f92672">(</span>1<span style="color:#f92672">)</span>.gz
</span></span><span style="display:flex;"><span>G4INCL.1.2.tar.gz		G4SAIDDATA.2.0.tar.gz
</span></span><span style="display:flex;"><span>G4NDL.4.7.1.tar.gz		G4TENDL.1.4.tar.gz
</span></span><span style="display:flex;"><span>G4NUDEXLIB.1.0.tar.gz		G4URRPT.1.1.tar.gz
</span></span><span style="display:flex;"><span>G4PARTICLEXS.4.1.tar.gz
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro data % cd ~/Downloads/G4DATA 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4DATA % ls
</span></span><span style="display:flex;"><span>G4ABLA.3.3.tar.gz		G4PII.1.3.tar.gz
</span></span><span style="display:flex;"><span>G4CHANNELING.1.0.tar.gz		G4PhotonEvaporation.6.1.tar.gz
</span></span><span style="display:flex;"><span>G4EMLOW.8.6.1.tar.gz		G4RadioactiveDecay.6.1.2.tar.gz
</span></span><span style="display:flex;"><span>G4ENSDFSTATE.3.0.tar.gz		G4RealSurface.2.2.tar<span style="color:#f92672">(</span>1<span style="color:#f92672">)</span>.gz
</span></span><span style="display:flex;"><span>G4INCL.1.2.tar.gz		G4SAIDDATA.2.0.tar.gz
</span></span><span style="display:flex;"><span>G4NDL.4.7.1.tar.gz		G4TENDL.1.4.tar.gz
</span></span><span style="display:flex;"><span>G4NUDEXLIB.1.0.tar.gz		G4URRPT.1.1.tar.gz
</span></span><span style="display:flex;"><span>G4PARTICLEXS.4.1.tar.gz
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4DATA % tar -xf *.tar.gz ~/Geant4/G4_install 
</span></span><span style="display:flex;"><span>tar: G4CHANNELING.1.0.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4EMLOW.8.6.1.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4ENSDFSTATE.3.0.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4INCL.1.2.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4NDL.4.7.1.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4NUDEXLIB.1.0.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4PARTICLEXS.4.1.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4PII.1.3.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4PhotonEvaporation.6.1.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4RadioactiveDecay.6.1.2.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4SAIDDATA.2.0.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4TENDL.1.4.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: G4URRPT.1.1.tar.gz: Not found in archive
</span></span><span style="display:flex;"><span>tar: /Users/ninependoragon/Geant4/G4_install: Not found in archive
</span></span><span style="display:flex;"><span>tar: Error exit delayed from previous errors.
</span></span></code></pre></div><p>我把下载的DATA文件全放在一个文件夹G4DATA中，本来以为可以tar一次性解压，但似乎不能用tar -xf *.tar.gz，在网上搜索之后发现可以用<code>for tar in *.tar.gz;  do tar xvf $tar; done</code>一次性解压多个tar.gz文件。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4DATA % <span style="color:#66d9ef">for</span> tar in *.tar.gz;  <span style="color:#66d9ef">do</span> tar xvf $tar; <span style="color:#66d9ef">done</span>
</span></span></code></pre></div><p>运行完成之后，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4DATA % ls
</span></span><span style="display:flex;"><span>G4ABLA.3.3.tar.gz		G4PARTICLEXS4.1
</span></span><span style="display:flex;"><span>G4ABLA3.3			G4PII.1.3.tar.gz
</span></span><span style="display:flex;"><span>G4CHANNELING.1.0.tar.gz		G4PII1.3
</span></span><span style="display:flex;"><span>G4CHANNELING1.0			G4PhotonEvaporation.6.1.tar.gz
</span></span><span style="display:flex;"><span>G4EMLOW.8.6.1.tar.gz		G4RadioactiveDecay.6.1.2.tar.gz
</span></span><span style="display:flex;"><span>G4EMLOW8.6.1			G4RealSurface.2.2.tar<span style="color:#f92672">(</span>1<span style="color:#f92672">)</span>.gz
</span></span><span style="display:flex;"><span>G4ENSDFSTATE.3.0.tar.gz		G4SAIDDATA.2.0.tar.gz
</span></span><span style="display:flex;"><span>G4ENSDFSTATE3.0			G4SAIDDATA2.0
</span></span><span style="display:flex;"><span>G4INCL.1.2.tar.gz		G4TENDL.1.4.tar.gz
</span></span><span style="display:flex;"><span>G4INCL1.2			G4TENDL1.4
</span></span><span style="display:flex;"><span>G4NDL.4.7.1.tar.gz		G4URRPT.1.1.tar.gz
</span></span><span style="display:flex;"><span>G4NDL4.7.1			G4URRPT1.1
</span></span><span style="display:flex;"><span>G4NUDEXLIB.1.0.tar.gz		PhotonEvaporation6.1
</span></span><span style="display:flex;"><span>G4NUDEXLIB1.0			RadioactiveDecay6.1.2
</span></span><span style="display:flex;"><span>G4PARTICLEXS.4.1.tar.gz
</span></span></code></pre></div><p>其实应该在Geant4的data目录下解压，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cd ~/Geant4/G4_install/share/Geant4/data/
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro data % <span style="color:#66d9ef">for</span> tar in *.tar.gz;  <span style="color:#66d9ef">do</span> tar xvf $tar; <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro data % rm *.tar.gz
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro data % ls
</span></span><span style="display:flex;"><span>G4ABLA3.3			G4PII1.3
</span></span><span style="display:flex;"><span>G4CHANNELING1.0			G4RealSurface.2.2.tar<span style="color:#f92672">(</span>1<span style="color:#f92672">)</span>.gz
</span></span><span style="display:flex;"><span>G4EMLOW8.6.1			G4SAIDDATA2.0
</span></span><span style="display:flex;"><span>G4ENSDFSTATE3.0			G4TENDL1.4
</span></span><span style="display:flex;"><span>G4INCL1.2			G4URRPT1.1
</span></span><span style="display:flex;"><span>G4NDL4.7.1			PhotonEvaporation6.1
</span></span><span style="display:flex;"><span>G4NUDEXLIB1.0			RadioactiveDecay6.1.2
</span></span><span style="display:flex;"><span>G4PARTICLEXS4.1
</span></span></code></pre></div><p>这样data数据应该就准备好了。现在看看example B1能不能运行。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro data % cd ..
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % ls
</span></span><span style="display:flex;"><span>data		examples	fonts		geant4make	tools.license
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro Geant4 % cd examples/basic/B1 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro B1 % mkdir build
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro B1 % cd build 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build % cmake ..
</span></span><span style="display:flex;"><span>-- The C compiler identification is AppleClang 15.0.0.15000309
</span></span><span style="display:flex;"><span>-- The CXX compiler identification is AppleClang 15.0.0.15000309
</span></span><span style="display:flex;"><span>-- Detecting C compiler ABI info
</span></span><span style="display:flex;"><span>-- Detecting C compiler ABI info - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Check <span style="color:#66d9ef">for</span> working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
</span></span><span style="display:flex;"><span>-- Detecting C compile features
</span></span><span style="display:flex;"><span>-- Detecting C compile features - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Detecting CXX compiler ABI info
</span></span><span style="display:flex;"><span>-- Detecting CXX compiler ABI info - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Check <span style="color:#66d9ef">for</span> working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
</span></span><span style="display:flex;"><span>-- Detecting CXX compile features
</span></span><span style="display:flex;"><span>-- Detecting CXX compile features - <span style="color:#66d9ef">done</span>
</span></span><span style="display:flex;"><span>-- Found EXPAT: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/lib/libexpat.tbd <span style="color:#f92672">(</span>found suitable version <span style="color:#e6db74">&#34;2.5.0&#34;</span>, minimum required is <span style="color:#e6db74">&#34;2.5.0&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
</span></span><span style="display:flex;"><span>-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
</span></span><span style="display:flex;"><span>-- Found Threads: TRUE
</span></span><span style="display:flex;"><span>-- Found OpenGL: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/System/Library/Frameworks/OpenGL.framework
</span></span><span style="display:flex;"><span>-- Found Geant4: /Users/ninependoragon/Documents/Geant4/install/lib/cmake/Geant4/Geant4Config.cmake <span style="color:#f92672">(</span>found version <span style="color:#e6db74">&#34;11.1.2&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Configuring <span style="color:#66d9ef">done</span> <span style="color:#f92672">(</span>1.4s<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Generating <span style="color:#66d9ef">done</span> <span style="color:#f92672">(</span>0.0s<span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>-- Build files have been written to: /Users/ninependoragon/Geant4/G4_install/share/Geant4/examples/basic/B1/build
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build % make 
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 12%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/exampleB1.cc.o
</span></span><span style="display:flex;"><span>/Users/ninependoragon/Geant4/G4_install/share/Geant4/examples/basic/B1/exampleB1.cc:79:25: error: no matching constructor <span style="color:#66d9ef">for</span> initialization of <span style="color:#e6db74">&#39;G4VisExecutive&#39;</span>
</span></span><span style="display:flex;"><span>  auto visManager <span style="color:#f92672">=</span> new G4VisExecutive<span style="color:#f92672">(</span>argc, argv<span style="color:#f92672">)</span>;
</span></span><span style="display:flex;"><span>                        ^              ~~~~~~~~~~
</span></span><span style="display:flex;"><span>/Users/ninependoragon/Documents/Geant4/install/include/Geant4/G4VisExecutive.icc:126:17: note: candidate constructor not viable: allows at most single argument <span style="color:#e6db74">&#39;verbosityString&#39;</span>, but <span style="color:#ae81ff">2</span> arguments were provided
</span></span><span style="display:flex;"><span>G4VisExecutive::G4VisExecutive <span style="color:#f92672">(</span>const G4String&amp; verbosityString<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>                ^
</span></span><span style="display:flex;"><span>/Users/ninependoragon/Documents/Geant4/install/include/Geant4/G4VisExecutive.hh:119:7: note: candidate constructor <span style="color:#f92672">(</span>the implicit copy constructor<span style="color:#f92672">)</span> not viable: requires <span style="color:#ae81ff">1</span> argument, but <span style="color:#ae81ff">2</span> were provided
</span></span><span style="display:flex;"><span>class G4VisExecutive: public G4VisManager <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>      ^
</span></span><span style="display:flex;"><span><span style="color:#ae81ff">1</span> error generated.
</span></span><span style="display:flex;"><span>make<span style="color:#f92672">[</span>2<span style="color:#f92672">]</span>: *** <span style="color:#f92672">[</span>CMakeFiles/exampleB1.dir/exampleB1.cc.o<span style="color:#f92672">]</span> Error <span style="color:#ae81ff">1</span>
</span></span><span style="display:flex;"><span>make<span style="color:#f92672">[</span>1<span style="color:#f92672">]</span>: *** <span style="color:#f92672">[</span>CMakeFiles/exampleB1.dir/all<span style="color:#f92672">]</span> Error <span style="color:#ae81ff">2</span>
</span></span><span style="display:flex;"><span>make: *** <span style="color:#f92672">[</span>all<span style="color:#f92672">]</span> Error <span style="color:#ae81ff">2</span>
</span></span></code></pre></div><p>报错与可视化有关，可能是因为没安装qt5，但是我在思考，为什么我的旧的Geant4可以运行。也有可能是环境变量的问题，先设置一下变量再看看。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro ~ % nano .zshrc 
</span></span></code></pre></div><p>看一眼zshrc的配置文件</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">2</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">3</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">4</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.7.0</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFI</span><span style="color:#960050;background-color:#1e0010">$</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">6</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">7</span><span><span style="color:#a6e22e">source</span> ~<span style="color:#f92672">/</span><span style="color:#a6e22e">Documents</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span><span style="color:#f92672">/</span><span style="color:#a6e22e">geant4</span>.<span style="color:#a6e22e">sh</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">8</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">9</span><span><span style="color:#a6e22e">alias</span> <span style="color:#a6e22e">g4camke</span>=<span style="color:#960050;background-color:#1e0010">&#39;</span><span style="color:#a6e22e">cmake</span> <span style="color:#f92672">-</span><span style="color:#a6e22e">DGant4_DIR</span>=~<span style="color:#f92672">/</span><span style="color:#a6e22e">Documents</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">cmake</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#960050;background-color:#1e0010">&#39;</span>
</span></span></code></pre></div><p>可以看见是有qt5的，可是Geant4的环境变量没有修改。先修改环境变量试试。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">2</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">3</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">4</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.7.0</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFI</span><span style="color:#960050;background-color:#1e0010">$</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">6</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">7</span><span><span style="color:#a6e22e">source</span> ~<span style="color:#75715e">//Geant4/G4_install/bin/geant4.sh</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">8</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">9</span><span><span style="color:#a6e22e">alias</span> <span style="color:#a6e22e">g4camke</span>=<span style="color:#960050;background-color:#1e0010">&#39;</span><span style="color:#a6e22e">cmake</span> <span style="color:#f92672">-</span><span style="color:#a6e22e">DGant4_DIR</span>=~<span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">G4_install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">cmake</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#960050;background-color:#1e0010">&#39;</span>
</span></span></code></pre></div><p>control x 退出，y 回车两次保存。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro B1 % mkdir build2
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro B1 % cd build2
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build2 % cmake ../
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build2 % make
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 12%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/exampleB1.cc.o
</span></span><span style="display:flex;"><span>/Users/ninependoragon/Geant4/G4_install/share/Geant4/examples/basic/B1/exampleB1.cc:79:25: error: no matching constructor <span style="color:#66d9ef">for</span> initialization of <span style="color:#e6db74">&#39;G4VisExecutive&#39;</span>
</span></span><span style="display:flex;"><span>  auto visManager <span style="color:#f92672">=</span> new G4VisExecutive<span style="color:#f92672">(</span>argc, argv<span style="color:#f92672">)</span>;
</span></span><span style="display:flex;"><span>                        ^              ~~~~~~~~~~
</span></span><span style="display:flex;"><span>/Users/ninependoragon/Documents/Geant4/install/include/Geant4/G4VisExecutive.icc:126:17: note: candidate constructor not viable: allows at most single argument <span style="color:#e6db74">&#39;verbosityString&#39;</span>, but <span style="color:#ae81ff">2</span> arguments were provided
</span></span><span style="display:flex;"><span>G4VisExecutive::G4VisExecutive <span style="color:#f92672">(</span>const G4String&amp; verbosityString<span style="color:#f92672">)</span>:
</span></span><span style="display:flex;"><span>                ^
</span></span><span style="display:flex;"><span>/Users/ninependoragon/Documents/Geant4/install/include/Geant4/G4VisExecutive.hh:119:7: note: candidate constructor <span style="color:#f92672">(</span>the implicit copy constructor<span style="color:#f92672">)</span> not viable: requires <span style="color:#ae81ff">1</span> argument, but <span style="color:#ae81ff">2</span> were provided
</span></span><span style="display:flex;"><span>class G4VisExecutive: public G4VisManager <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>      ^
</span></span><span style="display:flex;"><span><span style="color:#ae81ff">1</span> error generated.
</span></span><span style="display:flex;"><span>make<span style="color:#f92672">[</span>2<span style="color:#f92672">]</span>: *** <span style="color:#f92672">[</span>CMakeFiles/exampleB1.dir/exampleB1.cc.o<span style="color:#f92672">]</span> Error <span style="color:#ae81ff">1</span>
</span></span><span style="display:flex;"><span>make<span style="color:#f92672">[</span>1<span style="color:#f92672">]</span>: *** <span style="color:#f92672">[</span>CMakeFiles/exampleB1.dir/all<span style="color:#f92672">]</span> Error <span style="color:#ae81ff">2</span>
</span></span><span style="display:flex;"><span>make: *** <span style="color:#f92672">[</span>all<span style="color:#f92672">]</span> Error <span style="color:#ae81ff">2</span>
</span></span></code></pre></div><p>还是报错，回头发现配置文件写错了，多写了个/。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro B1 % mkdir build3
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro B1 % cd build3 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build3 % source ~/Geant4/G4_install/bin/geant4.sh 
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build3 % cmake ..
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build3 % make 
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 12%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/exampleB1.cc.o
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 25%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/src/ActionInitialization.cc.o
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 37%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/src/DetectorConstruction.cc.o
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 50%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/src/EventAction.cc.o
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 62%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/src/PrimaryGeneratorAction.cc.o
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 75%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/src/RunAction.cc.o
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span> 87%<span style="color:#f92672">]</span> Building CXX object CMakeFiles/exampleB1.dir/src/SteppingAction.cc.o
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span>100%<span style="color:#f92672">]</span> Linking CXX executable exampleB1
</span></span><span style="display:flex;"><span>ld: warning: search path <span style="color:#e6db74">&#39;/opt/homebrew/Cellar/qt@5/5.15.13_1/lib:&#39;</span> not found
</span></span><span style="display:flex;"><span><span style="color:#f92672">[</span>100%<span style="color:#f92672">]</span> Built target exampleB1
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build3 % ./exampleB1 
</span></span></code></pre></div><p>并没有出现可视化窗口，然后才注意到刚刚的报错，还是没找到qt5，但是我这台电脑应该是有qt5的，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build3 % ls /opt/homebrew/Cellar/qt@5/5.15.13_1/
</span></span><span style="display:flex;"><span>Frameworks			doc
</span></span><span style="display:flex;"><span>INSTALL_RECEIPT.json		include
</span></span><span style="display:flex;"><span>LICENSE.FDL			lib
</span></span><span style="display:flex;"><span>LICENSE.GPL3-EXCEPT		libexec
</span></span><span style="display:flex;"><span>LICENSE.GPLv2			mkspecs
</span></span><span style="display:flex;"><span>LICENSE.GPLv3			phrasebooks
</span></span><span style="display:flex;"><span>LICENSE.LGPLv21			plugins
</span></span><span style="display:flex;"><span>LICENSE.LGPLv3			qml
</span></span><span style="display:flex;"><span>LICENSE.QT-LICENSE-AGREEMENT	share
</span></span><span style="display:flex;"><span>README				translations
</span></span><span style="display:flex;"><span>bin
</span></span></code></pre></div><p>发现是有这个目录的，还是环境变量问题。听ai的修改成：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 1</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 2</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 3</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 4</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.7.0</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONF</span><span style="color:#960050;background-color:#1e0010">$</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 6</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 7</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/opt/qt@5/lib $LDFLAGS&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 8</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/opt/qt@5/include $CPPFLAGS&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 9</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFIG_PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">10</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">11</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">12</span><span><span style="color:#a6e22e">source</span> ~<span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">G4_install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span><span style="color:#f92672">/</span><span style="color:#a6e22e">geant4</span>.<span style="color:#a6e22e">sh</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">13</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">14</span><span><span style="color:#a6e22e">alias</span> <span style="color:#a6e22e">g4camke</span>=<span style="color:#960050;background-color:#1e0010">&#39;</span><span style="color:#a6e22e">cmake</span> <span style="color:#f92672">-</span><span style="color:#a6e22e">DGant4_DIR</span>=~<span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">G4_install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">cmake</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#960050;background-color:#1e0010">&#39;</span>
</span></span></code></pre></div><p>然后</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>source ~/.zshrc
</span></span></code></pre></div><p>再次make example B1结果还是不行。</p>
<p>搜到一篇帖子说G4不支持在zsh中执行，只能bash中执行，我先看看我的.bashrc。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.5.1</span><span style="color:#a6e22e">_2</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">2</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt/6.5.1_2/lib&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">3</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt/6.5.1_2/include&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">4</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.5.1</span><span style="color:#a6e22e">_2</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFI</span><span style="color:#960050;background-color:#1e0010">$</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">6</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CMAKE_PREFIX_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#ae81ff">5.15.10</span><span style="color:#f92672">/</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">7</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">8</span><span><span style="color:#a6e22e">source</span> <span style="color:#f92672">/</span><span style="color:#a6e22e">Users</span><span style="color:#f92672">/</span><span style="color:#a6e22e">ninependoragon</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Documents</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span><span style="color:#f92672">/</span><span style="color:#a6e22e">geant4</span>.<span style="color:#a6e22e">sh</span>
</span></span></code></pre></div><p>修改一下，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.5.1</span><span style="color:#a6e22e">_2</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">2</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt/6.5.1_2/lib&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">3</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt/6.5.1_2/include&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">4</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.5.1</span><span style="color:#a6e22e">_2</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFI</span><span style="color:#960050;background-color:#1e0010">$</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">6</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CMAKE_PREFIX_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#ae81ff">5.15.10</span><span style="color:#f92672">/</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">7</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">8</span><span><span style="color:#a6e22e">source</span> <span style="color:#f92672">/</span><span style="color:#a6e22e">Users</span><span style="color:#f92672">/</span><span style="color:#a6e22e">ninependoragon</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">G4_install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span><span style="color:#f92672">/</span><span style="color:#a6e22e">geant4</span>.<span style="color:#a6e22e">sh</span>
</span></span></code></pre></div><p>修改之后运行还是不对，而且我记得两年前我用zsh运行过example B1。
又在网上搜了一堆之后发现可能是关联cmake的时候没有开启GEANT4_USE_QT，现在重新cmake安装试试。
删掉旧的build文件夹，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>~/Geant4/G4_install -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>OFF -DGEANT4_USE_GDML<span style="color:#f92672">=</span>ON -DGEANT4_BUILD_MULTITHREADED<span style="color:#f92672">=</span>ON -DGEANT4_USE_QT<span style="color:#f92672">=</span>ON ~/Geant4/geant4-v11.3.2
</span></span></code></pre></div><p>折腾一个小时后，发现还是zshrc配置文件写错了。修改后的.zshrc文件如下。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 1</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 2</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 3</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 4</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.7.0</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFIG_PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 6</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib${LDFLAGS:+:$LDFLAGS}&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 7</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include${CPPFLAGS:+:$CPPFLAGS}&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 8</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#e6db74">&#34;/opt/homebrew/Cellar/qt@5/5.15.13_1/lib/pkgconfig${PKG_CONFIG_PATH:+:$PK$
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 9</span><span><span style="color:#e6db74">export PATH=&#34;</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span><span style="color:#960050;background-color:#1e0010">$</span>{<span style="color:#a6e22e">PATH</span>:<span style="color:#f92672">+</span>:}<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span><span style="color:#e6db74">&#34;
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">10</span><span><span style="color:#e6db74">
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">11</span><span><span style="color:#e6db74">#export PATH=&#34;</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span><span style="color:#e6db74">&#34;
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">12</span><span><span style="color:#e6db74">#export LDFLAGS=&#34;</span><span style="color:#f92672">-</span><span style="color:#a6e22e">L</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#ae81ff">5.15.13</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span><span style="color:#e6db74">&#34;
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">13</span><span><span style="color:#e6db74">#export CPPFLAGS=&#34;</span><span style="color:#f92672">-</span><span style="color:#a6e22e">I</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#ae81ff">5.15.13</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">include</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span><span style="color:#e6db74">&#34;
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">14</span><span><span style="color:#e6db74">#export PKG_CONFIG_PATH=&#34;</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.7.0</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFIG_PATH</span><span style="color:#e6db74">&#34;
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">15</span><span><span style="color:#e6db74">
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">16</span><span><span style="color:#e6db74">#export CMAKE_PREFIX_PATH=/opt/homebrew/Cellar/qt@5/5.15.13_1/:$CMAKE_PREFIX_PATH
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">17</span><span><span style="color:#e6db74">
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">18</span><span><span style="color:#e6db74">#export PATH=/opt/homebrew/opt/qt@5/bin:$PATH
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">19</span><span><span style="color:#e6db74">#export LDFLAGS=&#34;</span><span style="color:#f92672">-</span><span style="color:#a6e22e">L</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span> <span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span><span style="color:#960050;background-color:#1e0010">&#34;</span>
</span></span></code></pre></div><p>而且我发现source ~/.zshrc 后会导致$LDFLAGS等相同路径重复多次，重启终端则是正常的。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % cmake -DCMAKE_INSTALL_PREFIX<span style="color:#f92672">=</span>~/Geant4/G4_install -DGEANT4_INSTALL_DATA<span style="color:#f92672">=</span>OFF -DGEANT4_USE_GDML<span style="color:#f92672">=</span>ON -DGEANT4_BUILD_MULTITHREADED<span style="color:#f92672">=</span>ON -DGEANT4_USE_QT<span style="color:#f92672">=</span>ON ~/Geant4/geant4-v11.3.2
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro G4_build % make
</span></span></code></pre></div><p>目前没有报warning了，所以大概还是ld: warning: search path &lsquo;/opt/homebrew/Cellar/qt@5/5.15.13_1/lib:&rsquo; not found这个报错的原因，路径最后含有冒号，按照ai的修改意见改了.zshrc之后就不提示这个warning了。然而这个文件两年了一直没动过，想不起来两年前怎么安装的Geant4了。
make完操作跟上面一样，先make install，然后拷贝data文件，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-zsh" data-lang="zsh"><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build % source ~/Geant4/G4_install/bin/geant4.sh
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build % alias g4camke<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;cmake -DGant4_DIR=~/Geant4/G4_install/lib/cmake/Geant4/&#39;</span>
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build % cmake ..   
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build % make -j4
</span></span><span style="display:flex;"><span>ninependoragon@Nines-MacBook-Pro build % ./exampleB1
</span></span></code></pre></div><p><img src="/geant4/B1.png" alt="exampleB1" title="exampleB1">
终于搞定了，泪目，每次安装都是全新体验。</p>
<p>明天再写吧 累了 踩坑写完后给个总结我会放在最前面
大概就是</p>
<ol>
<li>下载源码和依赖</li>
<li>qt5环境</li>
<li>安装</li>
<li>拷贝data</li>
<li>geant4环境</li>
<li>运行example B1</li>
</ol>
<p>6月24日晚我来写总结部分的时候发现我的.zshrc文件alias部分写错了，是拼写错误。而且之前折腾的时候测试的一些注释掉的行也没有删除，显得很乱。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 1</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 2</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 3</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 4</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.7.0</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFIG_PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 6</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib${LDFLAGS:+:$LDFLAGS}&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 7</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include${CPPFLAGS:+:$CPPFLAGS}&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 8</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#e6db74">&#34;/opt/homebrew/Cellar/qt@5/5.15.13_1/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 9</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#e6db74">&#34;/opt/homebrew/opt/qt@5/bin${PATH:+:}$PATH&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">10</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">11</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#e6db74">&#34;/opt/homebrew/opt/qt@5/bin:$PATH&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">12</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib:$LDFLAGS&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">13</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include:$CPPFLAGS&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">14</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#e6db74">&#34;/opt/homebrew/Cellar/qt/6.7.0_1/lib/pkgconfig:$PKG_CONFIG_PATH&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">15</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">16</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CMAKE_PREFIX_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#ae81ff">5.15.13</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CMAKE_PREFIX_PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">17</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">18</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">19</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/opt/qt@5/lib $LDFLAGS&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">20</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/opt/qt@5/include $CPPFLAGS&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">21</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFIG_PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">22</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">23</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">24</span><span><span style="color:#a6e22e">source</span> ~<span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">G4_install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span><span style="color:#f92672">/</span><span style="color:#a6e22e">geant4</span>.<span style="color:#a6e22e">sh</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">25</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">26</span><span><span style="color:#a6e22e">alias</span> <span style="color:#a6e22e">g4camke</span>=<span style="color:#960050;background-color:#1e0010">&#39;</span><span style="color:#a6e22e">cmake</span> <span style="color:#f92672">-</span><span style="color:#a6e22e">DGant4_DIR</span>=~<span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">G4_install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">cmake</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#960050;background-color:#1e0010">&#39;</span>
</span></span></code></pre></div><p>不过这一行相当于给cmake换了个名字，我不运行g4cmake的话倒是没什么问题。但是直接cmake也行，感觉用处不大，直接删掉了。我最后的配置文件是，</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 1</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 2</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">LDFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 3</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include&#34;</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CPPFLAGS</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 4</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PKG_CONFIG_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#f92672">/</span><span style="color:#ae81ff">6.7.0</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">PKG_CONFIG</span><span style="color:#960050;background-color:#1e0010">$</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 5</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 6</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">LDFLAGS</span>=<span style="color:#e6db74">&#34;-L/opt/homebrew/Cellar/qt@5/5.15.13_1/lib${LDFLAGS:+:$LDFLAGS}&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 7</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CPPFLAGS</span>=<span style="color:#e6db74">&#34;-I/opt/homebrew/Cellar/qt@5/5.15.13_1/include${CPPFLAGS:+:$CPPFL$
</span></span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 8</span><span><span style="color:#e6db74">export PKG_CONFIG_PATH=&#34;</span><span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#ae81ff">5.15.13</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span><span style="color:#a6e22e">lib</span><span style="color:#f92672">/</span><span style="color:#a6e22e">pkgconfig</span><span style="color:#960050;background-color:#1e0010">$</span>{<span style="color:#a6e22e">PKG_CO</span><span style="color:#960050;background-color:#1e0010">$</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f"> 9</span><span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">PATH</span>=<span style="color:#e6db74">&#34;/opt/homebrew/opt/qt@5/bin${PATH:+:}$PATH&#34;</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">10</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">11</span><span><span style="color:#960050;background-color:#1e0010">#</span><span style="color:#a6e22e">export</span> <span style="color:#a6e22e">CMAKE_PREFIX_PATH</span>=<span style="color:#f92672">/</span><span style="color:#a6e22e">opt</span><span style="color:#f92672">/</span><span style="color:#a6e22e">homebrew</span><span style="color:#f92672">/</span><span style="color:#a6e22e">Cellar</span><span style="color:#f92672">/</span><span style="color:#a6e22e">qt</span><span style="color:#960050;background-color:#1e0010">@</span><span style="color:#ae81ff">5</span><span style="color:#f92672">/</span><span style="color:#ae81ff">5.15.13</span><span style="color:#a6e22e">_1</span><span style="color:#f92672">/</span>:<span style="color:#960050;background-color:#1e0010">$</span><span style="color:#a6e22e">CMAKE_PREFIX_PATH</span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">12</span><span>
</span></span><span style="display:flex;"><span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">13</span><span><span style="color:#a6e22e">source</span> ~<span style="color:#f92672">/</span><span style="color:#a6e22e">Geant4</span><span style="color:#f92672">/</span><span style="color:#a6e22e">G4_install</span><span style="color:#f92672">/</span><span style="color:#a6e22e">bin</span><span style="color:#f92672">/</span><span style="color:#a6e22e">geant4</span>.<span style="color:#a6e22e">sh</span>
</span></span></code></pre></div><p>注释掉的几行对未来可能有帮助，我就留下来。</p>
<hr>
<h2 id="虚拟机">虚拟机</h2>
<p><a href="https://extra.lp2ib.in2p3.fr/G4/">https://extra.lp2ib.in2p3.fr/G4/</a>，下载之后用VMware打开就行，用户名和密码还有其他相关内容请看<a href="https://extra.lp2ib.in2p3.fr/G4/Readme/">README</a>。</p>
]]></content>
        </item>
        
    </channel>
</rss>
