在Fortran powerstation中得到未解决的外部符号_GET_COMMAND_ARGUMENT@12 , GETARG@12的错误。

问题描述 投票:0回答:1

我尝试使用Fortran的get_command_argument属性。但是在运行构建函数时,微软开发者工作室显示了以下错误。我是一个新手,我已经使用了下面链接中的例子。请帮助我!谢谢

Example 1. 
PROGRAM test_get_command_argument
INTEGER :: i
CHARACTER(len=32) :: arg
i = 0
DO
CALL get_command_argument(i, arg)
IF (LEN_TRIM(arg) == 0) EXIT
WRITE (*,*) TRIM(arg)
i = i+1
END DO
END PROGRAM

--------------------Configuration: Text1 - Win32 Debug--------------------
Linking...
Text1.obj : error LNK2001: unresolved external symbol _GET_COMMAND_ARGUMENT@12
Text1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
Text1.exe - 2 error(s), 0 warning(s)




Example 2. 
PROGRAM cmdlnsum
IMPLICIT NONE
CHARACTER(100) :: num1char
CHARACTER(100) :: num2char
REAL :: num1
REAL :: num2
REAL :: numsum

!First, make sure the right number of inputs have been provided
IF(COMMAND_ARGUMENT_COUNT().NE.2)THEN
  WRITE(*,*)'ERROR, TWO COMMAND-LINE ARGUMENTS REQUIRED, STOPPING'
  STOP
ENDIF

CALL GET_COMMAND_ARGUMENT(1,num1char)   !first, read in the two values
CALL GET_COMMAND_ARGUMENT(2,num2char)

READ(num1char,*)num1                    !then, convert them to REALs
READ(num2char,*)num2

numsum=num1+num2                        !sum numbers
WRITE(*,*)numsum                        !write out value

END PROGRAM

Linking...
fortran_program.obj : error LNK2001: unresolved external symbol _GET_COMMAND_ARGUMENT@12
fortran_program.obj : error LNK2001: unresolved external symbol _COMMAND_ARGUMENT_COUNT@0
fortran_program.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.
fortran_program.exe - 3 error(s), 0 warning(s)

实现getarg子程序调用https:/gcc.gnu.orgonlinedocsgfortranGET_005fCOMMAND_005fARGUMENT.html。https:/riptutorial.comfortranexample26615passing-command-line-arguments。

fortran gfortran fortran90 intel-fortran
1个回答
1
投票

根据标题和对 "开发者工作室 "的引用,我怀疑你是想使用Microsoft Powerstation Fortran。 如果是这样的话,那个编译器最后一次发布是在20世纪90年代中期,不支持GET_COMMAND_ARGUMENT或COMMAND_ARGUMENT_COUNT内在过程。 这些内在程序在2003年修订的Fortran标准中得到了规定。

© www.soinside.com 2019 - 2024. All rights reserved.