j5888xm 发表于 2024-3-26 10:48 谢谢老师,我刚才用make all CFLAGS=-std=c99解决了C99报错的原因,已经使用ifort+MKL编译成功了,再次感谢老师 |
参与人数Participants 1 | eV +1 | 收起 理由Reason |
---|---|---|
zjxitcc | + 1 | 赞! |
j5888xm 发表于 2024-3-26 10:48 用conda新创一个虚拟环境就行,不用改动自己安装的python conda create -n mokit-py39 python=3.9 conda activate mokit-py39 |
本帖最后由 j5888xm 于 2024-3-26 10:54 编辑 zjxitcc 发表于 2024-3-25 22:39 老师您好,还是报了相同的错误 add_bgcharge_to_inp.o: In function `add_bgcharge_to_qchem_inp_': add_bgcharge_to_inp.f90:(.text+0x69a5): undefined reference to `for_trim' add_bgcharge_to_inp.f90:(.text+0x6a22): undefined reference to `for_open' add_bgcharge_to_inp.f90:(.text+0x6a76): undefined reference to `for_write_seq_fmt' add_bgcharge_to_inp.f90:(.text+0x6b0c): undefined reference to `for_write_seq_fmt' add_bgcharge_to_inp.f90:(.text+0x6b74): undefined reference to `for_write_seq_fmt' add_bgcharge_to_inp.f90:(.text+0x6ba1): undefined reference to `for_close' collect2: error: ld returned 1 exit status make: *** [add_bgcharge_to_inp] Error 1 要不我还是把python降一下级试试吧 |
j5888xm 发表于 2024-3-25 22:20 你试试能否使用gcc/gfortran+MKL编译,即make -f Makefile.gnu_mkl |
zjxitcc 发表于 2024-3-23 12:17 谢谢老师解答,预编译版python3.10不支持CentOS 7,所以我从源码编译了,遇到了如下问题: 一、使用 ifort+MKL编译时,C99报错 error: ‘for’ loop initial declarations are only allowed in C99 mode for (int i = 0; i < rank; ++i) { ^ 提示应该在代码中加入-std=c99,这个应该加在Makefile的什么地方呢? 二、使用gfortran+OpenBLAS编译时,链接报了如下的错误 add_bgcharge_to_inp.f90:(.text+0x69a5): undefined reference to `for_trim' add_bgcharge_to_inp.f90:(.text+0x6a22): undefined reference to `for_open' add_bgcharge_to_inp.f90:(.text+0x6a76): undefined reference to `for_write_seq_fmt' add_bgcharge_to_inp.f90:(.text+0x6b0c): undefined reference to `for_write_seq_fmt' add_bgcharge_to_inp.f90:(.text+0x6b74): undefined reference to `for_write_seq_fmt' add_bgcharge_to_inp.f90:(.text+0x6ba1): undefined reference to `for_close' collect2: error: ld returned 1 exit status make: *** [add_bgcharge_to_inp] Error 1 这种编译我也没整明白,这种情况应该如何解决呢? 麻烦老师指点一下迷津,太感谢了 |
j5888xm 发表于 2024-3-23 12:00 你下载的mokit预编译版是python 3.9版本的,然而你当前python版本为3.10,二者不匹配。有三种办法,你自己选一种: (1)使用对应python 3.10的预编译版mokit,这里可以下载,py310_gcc10。 (2)创建一个python 3.9的虚拟环境,以后都在这个虚拟环境中运行mokit-py3.9,例如运行 conda create -n mokit-py39 python=3.9 conda activate mokit-py39 (3)下载MOKIT源码压缩包,自己在python 3.10的环境下编译一下。 |
j5888xm 发表于 2024-3-23 11:19 运行一下这两行,截图展示一下结果 ls $MOKIT_ROOT/mokit/lib python --version |
zjxitcc 发表于 2024-3-23 09:41 嗯嗯老师,我是以下载预编译版本安装的Mokit,我的环境变量如下所示: # mokit export MOKIT_ROOT=/export/home/shiyb/app/mokit39 export PATH=$MOKIT_ROOT/bin:$PATH export PYTHONPATH=$MOKIT_ROOT:$PYTHONPATH export LD_LIBRARY_PATH=$MOKIT_ROOT/mokit/lib:$LD_LIBRARY_PATH export GMS=/export/home/shiyb/app/gamess/rungms 目前可以使用mokit正常从Gaussian,ORCA,Openmolcas中传轨道,但是automr会报错,谢谢老师解答 |
说明一下你是以何种方式安装的MOKIT(conda联网安装/下载预编译版/自己从源码编译);你的MOKIT环境变量是啥样。 |
手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图
GMT+8, 2024-11-25 04:31 , Processed in 0.187929 second(s), 26 queries , Gzip On.