库中的“lib”前缀

时间:2011-06-03 18:33:09

标签: c++ c gcc naming-conventions

来自http://www.adp-gmbh.ch/cpp/gcc/create_lib.html

  

注意:图书馆必须以三个字母lib开头,后缀为.a

这是一个操作系统约定,还是gcc / ar怪癖? Xcode似乎能够创建没有前缀的库。它有什么不同的做法?

1 个答案:

答案 0 :(得分:17)

您可以根据需要为库命名,但如果您希望gcc的-l标志找到正确的标记,则需要按链接描述的方式命名。例如:

gcc -o myapp myapp.c -lm

将编译myapp.c,将生成的对象与libm.a链接,并输出名为myapp的可执行文件。目前,可能存在涉及动态库名称等的更复杂的搜索路径,但是您应该从该示例中获得基本思想。

来自gcc man page

  

-l 图书馆 ...

     

...使用 lib .a 围绕图书馆并搜索多个目录。