首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CMake-困难构建静态库

CMake-困难构建静态库
EN

Stack Overflow用户
提问于 2013-09-11 00:32:13
回答 1查看 1.5K关注 0票数 1

因此,我已经尝试构建libarchive几天了,遵循本指南和许多其他线程:https://github.com/libarchive/libarchive/wiki/BuildInstructions

我想要一个带有LZMA、zlib和bzip2支持的静态库。我也有静态版本的这些(库的)

我只是不能让它正常工作。我使用CMAKE为VS2010和NMAKE生成make文件。这两个选项的编译都很好,但是当我尝试使用生成的archive_static.lib时,在我的项目中我得到了大量未解决的外部结果。编译库的.dll版本不会产生未解决的外部问题,但是它会开始请求zlib.dll、bzip2.dll等,我没有这些,也不想使用。

我想我需要用cmake设置一些旗子,但我不知道该如何做。

任何帮助都是非常感谢的。http://www.libarchive.org/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-11 01:37:05

我不能确定这里是否会发生这种情况,但请记住,当将二进制文件链接到静态库时,它的外部依赖项不一定嵌入到静态库中,这意味着您可能需要提供程序通过libarchive间接依赖的静态库,在您的示例中,这是明确的。

此外,在连接静态和动态的窗口时,windows上也有一些混淆,因为在这两种情况下,您都提供了一个.lib文件,因此很容易将事情混合起来,提供动态链接的.lib,而不是静态版本。如果您这样做,链接器可能拒绝链接您的程序(尤其是在boost中),或者链接得很好,然后,在执行时,OS将需要相应的..dll。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18730876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档