intel编译器19.1编译报错“ICL“任务意外失败

昨天重装了个系统就这样了,请问是什么问题?
编译x86和x64都是这样,空代码也是,用VS编译器就没问题
主要用于x64内联汇编在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

环境:VS2019桌面开发+intel编译器19.1

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 15
    评论
要在Windows系统上使用Intel编译器编译Fortran90代码并调用C++接口,您需要遵循以下步骤: 1.编写C++接口代码 首先,您需要编写一个C++接口文件来实现Fortran90代码和C++代码之间的交互。您可以使用extern “C”来指定C++函数按照C语言的方式导出,以便Fortran90代码可以正确调用它们。例如,以下是一个简单的C++接口文件的示例: ```c++ extern "C" { void my_cpp_function(int* a, int* b, int* c); } void my_cpp_function(int* a, int* b, int* c) { *c = *a + *b; } ``` 2.编译C++代码 接下来,您需要使用Intel编译器编译C++代码,并生成一个DLL文件。您可以使用以下命令编译代码: ``` icl /LD my_cpp_code.cpp ``` 此命令将生成一个名为my_cpp_code.dll的DLL文件。 3.编写Fortran90代码 接下来,您需要编写Fortran90代码来调用C++接口。您需要使用Fortran90中的ISO_C_BINDING模块来定义C++函数的接口。例如,以下是一个简单的Fortran90代码的示例: ```fortran PROGRAM main USE ISO_C_BINDING IMPLICIT NONE INTEGER(C_INT) :: a, b, c INTERFACE SUBROUTINE my_cpp_function(a, b, c) BIND(C, NAME='my_cpp_function') IMPORT INTEGER(C_INT), INTENT(IN) :: a, b INTEGER(C_INT), INTENT(OUT) :: c END SUBROUTINE my_cpp_function END INTERFACE a = 1 b = 2 CALL my_cpp_function(a, b, c) WRITE(*,*) c END PROGRAM main ``` 4.编译Fortran90代码 最后,您需要使用Intel编译器编译Fortran90代码,并链接到C++ DLL文件。您可以使用以下命令编译Fortran90代码: ``` ifort my_f90_code.f90 /link my_cpp_code.dll ``` 此命令将生成一个可执行文件,您可以运行它来调用C++接口并执行代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值