如何简洁地链接库文件有长地址的Ubuntu中的文件

时间:2013-08-21 13:03:21

标签: ubuntu scripting linker fortran

我在ubuntu中安装了一个免费的fortran软件,我想用它做一些计算。现在我每次编译时都必须使用-I/home/me/dir1/dir2 -L/home/me/dir1/dir2/lib/来给出编译文件和库所在的目录。这相当麻烦。

请指出正确的方向:我想为长位置做一个捷径,例如我如何定义myloc = /home/me/dir1/dir2,以便在编译时我只需输入gfortran myprog.f90 -I/myloc -L/myloc。请提供一些链接,我可以在哪里找到这样的例子。这叫做脚本语言吗?我隐约知道我可能要在./bashrc或./profile中编写一些命令。

2 个答案:

答案 0 :(得分:3)

.bashrc内(在终端中输入nano ~/.bashrc),输入以下行

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/me/dir1/dir2/lib
export PATH=$PATH:/home/me/dir1/dir2

save&退出,然后键入source ~/.bashrc,然后您不必在编译中添加-I${...} -L${...}。这应该有效,因为gfortran会在PATHLD_LIBRARY_PATH目录中查找相应的文件。

答案 1 :(得分:2)

您可以定义环境变量并在编译期间使用它们。例如,说:

INCDIR=/home/me/dir1/dir2
LIBDIR=/home/me/dir1/dir2/lib

并执行gfortran说:

gfortran myprog.f90 -I${INCDIR} -L${LIBDIR}