Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oop 如何使用ifort链接包含类的Fortran库_Oop_Linker_Fortran_Intel Fortran_Fortran2003 - Fatal编程技术网

Oop 如何使用ifort链接包含类的Fortran库

Oop 如何使用ifort链接包含类的Fortran库,oop,linker,fortran,intel-fortran,fortran2003,Oop,Linker,Fortran,Intel Fortran,Fortran2003,我试图确定链接静态库时收到错误的原因,该库具有包含类型绑定过程的类 在命令行上编译和链接时: 这可以工作(并且生成的可执行文件可以正常运行) ifort src/main.F90 C:\Temp\lib\test.lib/include:“C:\Temp\mod”$(Opts)/link$(Lnk) 但这是行不通的 ifort src/main.F90/include:“C:\Temp\mod”$(Opts)/link/LIBPATH:“C:\Temp\lib\test.lib”$(Lnk) 如

我试图确定链接静态库时收到错误的原因,该库具有包含类型绑定过程的类

在命令行上编译和链接时:

这可以工作(并且生成的可执行文件可以正常运行)

ifort src/main.F90 C:\Temp\lib\test.lib/include:“C:\Temp\mod”$(Opts)/link$(Lnk)

但这是行不通的

ifort src/main.F90/include:“C:\Temp\mod”$(Opts)/link/LIBPATH:“C:\Temp\lib\test.lib”$(Lnk)

如果您能就后一个命令不起作用的原因提出建议,我将不胜感激。它是我用来链接典型库的命令行格式。后一个命令下面的链接错误涉及test.lib中包含的Fortran类定义的类型绑定过程

(请注意,iPort和链接器版本包含在下面。平台是Windows 7,在上述两种情况下,我都使用make via MinGW)


/LIBPATH链接器选项指定要在其中搜索库的目录。第二个命令似乎正在使用它来指定库文件本身


从命令行中删除
/LIBPATH:
选项前缀,或从目录搜索规范中拆分库名称-
/LIBPATH:“C:\Temp\lib”。。。。。test.lib

我知道这是件简单而愚蠢的事情。非常感谢。
ifort src/main.F90  /include:"C:\Temp\mod" /fpe:0 /real_size:64 /integer_size:64 /names:lowercase /iface:cref /iface:mixed_str_len_arg /assume:byterecl /extend_source:132 /O3 /traceback  /INCREMENTAL:NO /link /LIBPATH:"C:\Temp\lib\test.lib" /STACK:100000000 /MAP /MANIFEST /NODEFAULTLIB:msvcrt.lib
Intel(R) Visual Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 12.0.4.196 Build 20110427
Copyright (C) 1985-2011 Intel Corporation.  All rights reserved.

Microsoft (R) Incremental Linker Version 9.00.21022.08
Copyright (C) Microsoft Corporation.  All rights reserved.

-out:main.exe 
-subsystem:console 
-incremental:no 
/LIBPATH:C:\Temp\lib\test.lib 
/STACK:100000000 
/MAP 
/MANIFEST 
/NODEFAULTLIB:msvcrt.lib 
main.obj 
main.obj : error LNK2019: unresolved external symbol test_module_mp_setsegmentvalue_8 referenced in function MAIN__
main.obj : error LNK2019: unresolved external symbol test_module_mp_getsegmentvalue referenced in function MAIN__
main.obj : error LNK2001: unresolved external symbol test_module_mp_setsegmentvalue_4
main.exe : fatal error LNK1120: 3 unresolved externals
make: *** [main] Error 1120
makefile:7: recipe for target `main' failed