在另一个文件夹中编译linux中的库

时间:2014-02-23 16:41:12

标签: linux ubuntu compilation

我是Linux的新手。我的C程序源旁边的文件夹中有一个库,但我不知道如何编译它。当我的库与程序代码文件位于同一文件夹中时,我编译了所有内容。但是,我不明白如何从其他位置使用该库?

1 个答案:

答案 0 :(得分:2)

使用gcc的-L选项指定库所在的位置,使用-l选项指定库的位置。 如果您使用“make”来构建程序,只需打开Makefile并找出-L选项使用的位置。

例如,

gcc -L ./my_program/my_library -lmylib -o my_executable ./my_program/src/my_program.c

此外,您可以使用LD_LIBRARY_PATH环境变量来指定程序的库路径。

假设您已准备好运行您的excutable,但该库不在任何标准库路径中(例如/ usr / lib), 然后你可以按照以下命令运行你的程序。

$ LD_LIBRARY_PATH=/home/my_name/my_program/my_library my_executable