主要出现问题如下:

最近因为要用到子程序,所以就打算装个Visual Studio 和IVF进行计算。因为电脑里面已经装了Abaqus2021,所以就选了配套的VS2019 和IVF2020,按照 B站up主视频教程进行了关联。将两个call语句写在了launcher.bat文件中,完成后点击abaqus verification 进行验证全部pass。但是、但是、在cmd中进行abaqus job=jobname user=umatname int 的时候,就出现了LINK is not found in the system的错误。在排查错误期间,各种环境变量的修改,注册表的修改,甚至把VS和IVF重新装了一遍都没有用!!!折腾了一天
就在我大失所望,以为一天的努力最终付诸东流的时候,第二天检索为什么abaqus verification 验证全部通过而 abaqus command不通过的时候看到了这篇文章(https://blog.csdn.net/shanxing200/article/details/118920070),突然间恍然大悟。跟着这位up进行操作确实会出问题。为什么会出问题呢?
在cmd中输入如下命令:
where abaqus
可以得到如下结果。这个结果的意思是在command中输入abaqus命令就相当于运行了abaqus.bat批处理文件。
图1 abaqus 命令查询结果
接着继续查看abaqus.bat的详细内容,找到文件,右键打开后结果如下。这个文件的含义就是abaqus.bat调用了abq2021.bat文件。
图2 abaqus.bat的内容
打开abq2021.bat文件,这个里面有调用VS和IVF的语句吗,没有,因为调用语句写在了launcher.bat文件中。
总结一下:
为什么abaqus verification验证通过了?因为abaqus verification调用的是launcher.bat,launcher.bat引用完VS和IVF后指向了abq2021.bat,所以引用fortran和VS成功了。
为什么命令行输入报错呢?因为输入命令调用关系如下abaqus -> abaqus.bat -> abq2021.bat 绕过了引用VS和IVF的launcher.bat,当然无法成功运行子程序了。

最好还是将调用语句(call dirname\vcvarsall.bat x64 call dirname\ifortvars.bat intel64 vs2019 两行语句)写在abq2021.bat中,因为所有的文件最终都调用的是这个批处理文件。其他版本同理。
武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks ,Hyperworks, Protel,CAXA,OpenWorks LandMark,MATLAB,Enovia,Winchill,TeamCenter,MathCAD,Ansys, Abaqus,ls-dyna, Fluent, MSC,Bentley,License,UG,ug,catia,Dassault Systèmes,AutoDesk,Altair,autocad,PTC,SolidWorks,Ansys,Siemens PLM Software,Paradigm,Mathworks,Borland,AVEVA,ESRI,hP,Solibri,Progman,Leica,Cadence,IBM,SIMULIA,Citrix,Sybase,Schlumberger,MSC Products...