|
本帖最后由 Atlantis 于 2019-9-2 14:05 编辑
求教:C++调用Fortran静态库链接错误问题
环境:Visual studio 2017,Intel@ Parallel Studio XE 2019 Update 4
建立三个项目,FortranLib, FortranMain, CPPMain,其中FortranMain, CPPMain两个项目依赖Fortranlib。
Fortranlib中一个.f90文件,内容:
subroutine sub(a)
implicit none
integer :: a
write(*,*) a
return
end subroutine
subroutine SUBWITHOUTPARA()
implicit none
write(*,*) "In subWithoutPara"
return
end subroutine
FortranMain中一个文件,内容:
program ex0842m
implicit none
call sub(5)
call subWithoutPara
stop
end
CPPMain中一个CPP文件,内容:
#include "pch.h"
extern "C" {
void _stdcall SUBWITHOUTPARA();
}
int main(void)
{
int a = 10;
SUBWITHOUTPARA();
return 0;
}
FortranMain编译执行正常,CPPMain出现编译错误:
LNK2001 unresolvedexternal symbol _SUBWITHOUTPARA@0
项目工程代码:https://pan.baidu.com/s/1Sd13kH3ddIFry237uvz46g
网上查了半天也没能定位,求教各位大佬!多谢多谢!
|
|