1
我有一個很好的GUI,我使用QtCreator設計,我想用它來調用Fortran源文件中的函數來完成所有後端工作。我QtCreator版基於Qt 5.0.1 2.7.0 我在一個名爲sum.f90文件寫了一個簡單的Fortran-90計劃將兩個數字相加:在QtCreator中調用來自Qt的Fortran代碼
integer function addup (a, b)
implicit none
integer a, b
addup = a + b
return
end
然後我說這個sum.f90文件在源的pro文件像這樣:
SOURCES += forsum.f90
然後創建包含以下行頭文件fortranlink.h:
extern "C"
{
extern int addup_(int*,int*);
}
然後我包括此頭文件中我的主要酸CE文件「的#include fortranlink.h」,並呼籲該addup_功能,如:
int a=2;
int b=3;
int result=addup_(&a,&b);
編譯後,我得到以下錯誤:
Undefined reference to _gfortran_st_write
Undefined reference to _gfortran_transfer_character_write
Undefined reference to _gfortran_transfer_integer_write
Undefined reference to _gfortran_st_write_done
這些錯誤可能發生,因爲我不是在連接標準fortran庫在某處使用-lgfortran。但我在哪裏使用它?
LIBS + = - lgfortran(只是Google搜索)https://qt-project.org/forums/viewthread/19805 – cageman