GCC Linking Options

2019-09-05 13:59发布

I'm new to the world of building. I've always let my IDE take care of it for me, but now I'm working with autotools and command line.

Could someone explain the difference between gcc's
-l LIBNAME - Search for library LIBNAME
and -L DIRECTORY - Add DIRECTORY to library search path

Can the same linking be accomplished with either and it's just a style preference which gets used? Or is there actually something seriously different happening?

Thanks,

Andrew

2条回答
ゆ 、 Hurt°
2楼-- · 2019-09-05 14:43

The -L command adds a path to the list of locations the linker searches to find libraries.

The -l option means it searches for a library by the name you specify

Basically the -l option tells it to look for a library by that name and -L allows you to specify places to look.

More Information: http://linux.die.net/man/1/ld

查看更多
混吃等死
3楼-- · 2019-09-05 14:55

Usually you use both:

  • -l libname specifies the libraries you want to link, think single files.
  • -L specifies paths where the linker should look for them (in addition to the standard ones), think directories
查看更多
登录 后发表回答