【问题标题】:Regarding Visual Studio (fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64')关于 Visual Studio(致命错误 LNK1112:模块机器类型“X86”与目标机器类型“x64”冲突)
【发布时间】:2020-12-23 05:44:06
【问题描述】:

我正在尝试在 Abaqus 6.14-2 版本软件中使用用户子程序。为此,我通过安装 VS 2013 update 5 community version 和 Intel Parallel studio update 6 对其进行了配置,并通过了 Abaqus 中的验证测试。

但是当我运行我的工作时,我收到以下错误:MSVCRT.lib(chkstk.obj):致命错误 LNK1112:模块机器类型“X86”与目标机器类型“x64”冲突

【问题讨论】:

  • 不太清楚您要做什么。标准管道是 1) 在任何代码或文本编辑器中准备一个 pythone 子例程; 2) 使用 Abaqus python 解释器启动这个子程序(在 CAE 中通过“运行脚本”或通过命令行)。 “已通过 Abaqus 验证测试”是什么意思?
  • 通过验证,我认为这意味着 Abaqus 可以与 Visual 和 Parallel Studio 交互,因为子程序文件是用 Fortran 编码的,这两个是链接和编译所必需的。现在这个问题已经解决了。我在visual studio>>工具>>选项>>英特尔编译器和工具>>编译器中添加了“$(VCInstallDir)\bin\x86_amd64”这个条目。然后将上述条目添加为“可执行文件和库”选项中的第一个输入。实际上我的子程序是用 Fortan 编码的。

标签: visual-studio-2013 subroutine abaqus


【解决方案1】:

似乎您正在尝试使用已编译为 X86 模块的库(obj 文件),但您的项目是针对 64 位操作系统的。考虑在构建设置中将项目的目标切换到 X64。或者如果可能的话,为 x64 重建使用过的库。

【讨论】:

  • 您好,问题已解决。我在visual studio>>工具>>选项>>英特尔编译器和工具>>编译器中添加了“$(VCInstallDir)\bin\x86_amd64”这个条目。然后将上述条目添加为“可执行文件和库”选项中的第一个输入。实际上我的子程序是用 Fortan 编码的。
猜你喜欢
  • 2011-04-03
  • 2012-02-06
  • 2017-06-05
  • 2021-08-10
  • 1970-01-01
  • 2013-01-20
  • 2013-04-19
  • 1970-01-01
相关资源
最近更新 更多