-l
:表明需要一起编译的库文件。-L
:添加库文件所在的目录,只针对静态库。-c
:生成目标文件*.o
。-o
:指定输出文件。
静态库的使用方法
库文件名字为libxxx.a
或者libxxx.so
,使用时通过-l
链接:
gcc -lxxx main.c
如果库文件不在/lib
, /usr/lib
或/usr/local/lib
三者中的任一个文件夹的话,要通过-L
选项指定库所在的目录,否则会报错:/usr/bin/ld: cannot find -lxxx
。
> make
gcc main.c -lfunc1 -o debug/app # 没有制定库所在路径报错
/usr/bin/ld: cannot find -lfunc1
collect2: error: ld returned 1 exit status
Makefile:9: recipe for target ''app'' failed
make: *** [app] Error 1
> vi Makefile # 修改Makefile添加-L选项
> make
gcc main.c -L. -lfunc1 -o debug/app # 编译成功
此处评论已关闭