UW_0728. 发表于 2026-3-19 21:34 好的老师 ,我去看看 |
KaZikl 发表于 2026-3-19 21:19 那个sh脚本根本不是用于正式编译的脚本,只是方便开发者自己做CI测试用的。必须根据你toolchain安装了什么去自定义CMake选项。参考sob老师的博文,或者直接从GitHub上拉取目前的开发板,看看现在的toolchain怎么运行的(尤其是新增的generate_cmake_options.sh) |
本帖最后由 KaZikl 于 2026-3-19 21:30 编辑 Uus/pMeC6H4-/キ 发表于 2026-3-19 21:15 老师,我问工程师,说是根据这个sh脚本编译的,我现在问问看看能不能调取一下记录。 |
本帖最后由 KaZikl 于 2026-3-19 21:29 编辑 UW_0728. 发表于 2026-3-19 21:14 老师 我刚更改了那张图片,因为我发现上面有一行-DCP2K_USE_EVERYTHING=ON,但是下面又使用了-DCP2K_USE_VORI=OFF |
KaZikl 发表于 2026-3-19 21:03 如果你是按照当前社长博文http://sobereva.com/586的方法先装toolchain再自己手写cmake指令编译的,那不会涉及这个脚本。趁现在还没有执行太多别的操作,用history指令看看自己之前都往linux命令行输了什么,把编译CP2K相关的部分贴出来(用论坛的代码框的格式)。 开发分支的toolchain脚本增加了自动生成CP2K的cmake选项的功能,下次发布应该可以避免toolchain装了依赖库但cmake编译CP2K时没写上对应选项这种问题。 |
本帖最后由 UW_0728. 于 2026-3-19 21:19 编辑 KaZikl 发表于 2026-3-19 21:03 如果你确实用了cmake_cp2k.sh(虽然大概率不是),那就是因为-DCP2K_USE_VORI=OFF,意思就是不链接libvori库(这里CP2K没用CP2K_USE_LIBVORI,其实我觉得有点奇怪) 但你应该从.bash_history里面找一找你构建CP2K时究竟怎么构建的,弄不清楚就严格按照sob老师的博文来。 回复上面的:-D__LIBVORI本身不是CMake的选项,是由CP2K_USE_VORI选项用CMake传递给CP2K程序的真实编译flag。 |
|
本帖最后由 UW_0728. 于 2026-3-19 20:52 编辑 检查你的cmake指令 编译时cmake选项用了“-DCP2K_USE_VORI=ON”了吗(或者-DCP2K_USE_EVERYTHING=ON存在而没有设定-DCP2K_USE_VORI=OFF,也等于用了-DCP2K_USE_VORI=ON) |
| 编译cp2k本体的时候加了-D__LIBVORI么? |
| 参与人数Participants 1 | eV +1 | 收起 理由Reason |
|---|---|---|
|
| + 1 | 该选项的写法已过时五年,得更新源代码了 |
手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图
GMT+8, 2026-4-13 17:42 , Processed in 0.421674 second(s), 26 queries , Gzip On.