gpt4 book ai didi

c++ - 如何添加现有的lib需要构建到我自己的项目中

转载 作者:行者123 更新时间:2023-11-30 05:09:22 24 4
gpt4 key购买 nike

我目前正在使用 C++ 开发一个项目。我使用 autotools,顺便说一句,我是新来的,来制作建筑系统。我的项目中必须使用带有生成文件的现有库。因为它是一个很少使用的库,为了便于移植,我需要将整个源代码复制到我的项目目录中,并在构建我的代码之前要求 makefile 使用它自己的 makefile 来构建库。我应该怎么办?我不知道如何在 Makefile.am 或类似的地方添加代码。感谢您提供任何有用的答案。

最佳答案

两部分:

  1. 按照库的自述文件或说明的建议构建库。您可能必须选择选项来生成可接受的可共享库。

  2. 在您的项目中,将输出共享库添加为要包含的库。您可能还必须在某处向其添加声明文件 (.h)。

在(恕我直言)极少数情况下,将库直接包含到您的项目中可能是权宜之计。然而,抵制这种冲动:它通常会导致符号问题(命名空间污染和 namimg 冲突)并扰乱关于接口(interface)应该如何工作的假设。这也使源代码控制变得更加困难。

根据建议的项目分离(您的项目与图书馆的项目),如果图书馆发生变化,通常需要一定程度的智慧来有条件地重建项目。这可以通过首先调用 make the_library 然后调用 make myproject 的封装 makefile 来完成。或者您可以手动调用适当的 makefile,这会更方便,因为库——一旦它工作令人满意——可能不需要任何工作。

关于c++ - 如何添加现有的lib需要构建到我自己的项目中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46231240/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com