繁体   English   中英

如何将共享库添加到QtCreator

[英]how to add shared library to QtCreator

我有一个涉及两个库的项目。 我试图将要包含的库添加到我的.pro文件中,但是在编译时收到“找不到-lmylib1”。

INCLUDEPATH += ./lib/mylib1 \
               ./lib/mylib2

LIBS += -L"$$_PRO_FILE_PWD_/lib/mylib1" -lmylib1 \
        -L"$$_PRO_FILE_PWD_/lib/mylib2" -lmylib2

目录结构如下。

Myproject.pro
lib (directory)
     mylib1 (directory)
         mylib1.so
     mylib2 (directory)
         mylib2.so

为了完成@dave注释,不仅Qt Creator仅搜索名称为“ lib * .so”的文件。 这是类UNIX系统上链接器的默认行为。

引用ld链接器的文档:

-larchive

ld将在其路径列表中搜索指定的每个存档的libarchive.a的出现。 在支持共享库的系统上,ld也可以搜索扩展名为.a以外的库。 具体来说,在ELF和SunOS系统上,ld将在目录中搜索扩展名为.so的库,然后再搜索扩展名为.a的库。 按照约定,.so扩展名表示共享库。 [...]这种类型的档案搜索是Unix链接器的标准配置。

因此,如果您的库与lib*.alib*.so模式不匹配,则可以预期Qt Creator和链接程序都找不到它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM