现在从我所看到的命令
-l +filename,例如我的文件名是directory/libtest.so这将是-ldirectory/libtest.so
不,那是不正确的。应该是,
-Ldirectory-ltest即您
-L用来将目录添加到链接器将在其中查找库的搜索路径,并说出要使用链接到的库
-l,但是要链接到
libtest.so或
libtest.a说
-ltest没有
lib前缀或文件扩展名。
您 可以
通过不带
-L或
-l选项的显式命名文件(即just)进行链接
directory/libtest.so,但是对于动态库,这几乎总是错误的做法,因为它将确切的路径嵌入到可执行文件中,因此同一库必须位于同一位置程序运行时。通常,您想按名称(而不是路径)链接到它,以便可以在运行时从任何位置使用具有该名称的库。



