在上构建一个静态c++库,我需要链接到其他库
Building a static c++ lib on do I need to link to other libraries?
我一直在Linux上构建一个静态库。到目前为止,它完全是自包含的,里面的所有代码都不使用标准库以外的任何东西。我最近做了一个更改,现在一些编译单元正在使用boost代码。我一直在使用以下方法构建图书馆:
g++ -c -Wall -pedantic *.cpp
ar -cvq libbfclass.a *.o
我的问题是:我有必要调整这种方法来处理新库的使用吗?还是在构建使用我自己库的可执行文件时只需要提供链接库?据我所知,静态库基本上只是对象文件的存档,但我想知道我是否需要修改我的构建脚本以使一切正常工作,或者是否只有在构建可执行文件时才有必要???
你是对的-静态库只是对象文件的存档。在编译最终可执行文件时会解析符号,因此此时需要提供对其他库的引用。
相关文章:
- 将--whole archive链接器选项与CMake和具有其他库依赖项的库一起使用
- 使用 CMake 与其他静态库链接的静态库 - 一个有效,一个无效。为什么?
- 使用 pybind11 构建库,链接其他共享库
- 当其他链接库链接 stdc++ 为动态时,如何将 libstdc++ 链接设置为静态?
- 可视C++ - 从链接器>输入>其他依赖项中排除文件
- 叮当格式在单行上链接其他 ifs
- 如何链接由CMAKE在其他目录上生成的库
- 仅一个功能的链接错误.在同一类和CPP文件中具有相似签名的其他函数工作正常
- 如何将GCC中的静态库与其他动态库链接
- 如何链接一个使用其他库的静态C库
- D3D9 Direct3DCreate9() 链接器错误,但所有其他 D3D 函数都有效
- 为什么需要双指针来更改头部,而不是链接列表中的其他地方
- C 链接列表仅输出其他每个元素
- GTEST测试项目链接链接到其他可执行文件
- 为什么我需要将 -lstdc++ 添加到我的其他链接器标志中
- 在C++中,我们如何将插入运算符和其他运算符链接在一起
- 与其他库链接的静态库-LINKER警告
- C链接程序并在主函数上使用其他程序的方法(数独)
- 您可以将链接器/其他依赖项等复制到其他项目吗?
- 尝试解决链接器警告:默认库'MSVCRT'与使用其他库冲突