基本上,我想在Ubuntu(Linux环境)中的Eclipse(并行应用程序开发) IDE中使用C和FORTRAN编写一种混合编程语言。
我的主程序是用C语言编写的,而调用函数是用FORTRAN编写的。现在,我应该如何将这个FORTRAN源程序链接到C项目?
我能够从终端(Linux)编写和编译相同的(混合编程),没有任何问题。
发布于 2013-02-06 22:51:25
首先,确保您安装了适当的编译器;通常是默认的GNU编译器集合(但这也适用于英特尔的编译器)。确保您同时安装了C (gcc)和Fortran (gfortran)编译器。在NetBeans中,确保编译器是可识别的。转到Tools --> Options,并选择C/C++选项卡。C、C++和Fortran编译器应该列在那里。如果它们不是,点击“恢复默认值”按钮,它应该会找到它们。
接下来,创建一个新的C/C++项目(File --> new Project),选择"C/C++ Application“。单击“下一步”。填写项目名称、位置、文件夹等信息。选中“创建主文件”的复选框,并确保从右侧的下拉菜单中选择“C”。单击“完成”。
在这一点上,您应该有了一个编译的"Hello World“C代码。检查: Run --> Clean and Build Project。然后运行它。
要添加Fortran (或其他C/C++)源文件,请右键单击左侧"Projects“窗口中的"Source Files”,然后单击"New“并选择适当的文件类型(本例中为Fortran)。给它一个文件名,并选择它是F或F90 (或任何其他选项)类型的文件。这将自动将其添加到构建和链接中。您还可以通过选择"Add existing Item...“来添加现有文件。选项。
在链接时,您可能需要包含一些标准Fortran库。为此,右键单击项目名称并选择"Properties“。在左边的菜单上,点击"Linker“。根据需要添加其他库目录(第二行),在倒数第二行可以添加特定库--添加Fortran文件所需的任何Fortran库(IO是一个公共库)。
此时,您应该能够毫不费力地编译混合源代码。如果要从C语言调用Fortran子例程,请确保您有一个适当的头文件(可通过右键单击“头文件”并选择“新建”--> "C头文件“来添加),其中包含Fortran文件中任何子例程的extern "C" void functionname(arguments)。
https://stackoverflow.com/questions/14412785
复制相似问题