如何将链接库从 code::blocks 项目复制到另一个项目?

How to copy linked libraries from a code::blocks project to another one?

我最近开始使用 C++ 的 PortAudio 库。为了编译最简单的示例,我必须 link 我的项目到 8 个不同的库。我正在 code::blocks 作为 IDE 工作。我想创建一个新项目并告诉 linker 到相同的 8 个库 link,这样我就不必为每个新项目手动输入它们。这能做到吗?

您正在寻找的 Code::Blocks 功能可以让您 在之前的项目上创建一个新项目 "based",这意味着所有 工具链选项将从以前的项目中复制。

那很好,但它不存在。

然而,有一个相当轻松的解决方法,因为 C::B 允许您基于现有工具链定义新的 工具链

您想围绕 PortAudio 库开发大量项目。所以, 在 C::B IDE:

  • 从菜单栏,导航设置 -> 编译器

  • 您会看到 Selected Compiler。这可能是你想要的 您的 PortAudio 工作,假设它是 GNU GCC Compiler 4.8。如果 selected 编译器碰巧 不是 是您想要的,然后使用下拉列表 select 您想要的菜单。

  • 在 selected 编译器下方,单击 复制 按钮。你是 提示添加新编译器,并输入新编译器的名称。 调用它,例如 GCC 4.8 for PortAudio,然后单击 OK

  • 接下来,系统会提示您更新工具链可执行文件页面。再次单击确定。

  • 现在您看到 selected 编译器是您的新编译器,GCC 4.8 for PortAudio, 它的所有设置都由您支配。现在,他们都恰好 与 GCC 4.8 相同。

  • 不要更新工具链可执行文件,因为您要使用 GCC 4.8 工具链不变。但是您确实想要更改链接器设置( 也许 搜索目录 ,也许 编译器设置 。)设置 链接器设置(等)就像您在 PortAudio 中所做的那样 已成功配置的项目,并保存。

现在,GCC 4.8 for PortAudio 基本上是 "virtual toolchain" GCC 4.8,但为 PortAudio 项目定制。当你想创造 无需重新输入所有常用设置的新 PortAudio 项目, 只需选择 GCC 4.8 for PortAudio 作为项目的编译器 通过项目创建向导,否则 select 它作为项目的 创建项目后构建选项中的编译器。

相反,您正在寻找的功能存在,称为项目模板。

设置项目的编译器和构建选项(搜索和链接器选项卡等),并从文件菜单将项目另存为模板。它将显示在新项目菜单中的用户模板下,并创建一个与保存模板的项目设置相同的项目设置。

您可以选择保存包含您想要包含的文件的模板,它也会将这些文件的副本保存到模板中,并将它们包含在由该模板创建的每个新项目中。

无需设置一堆新的编译器条目,那不是它的用途。

参见the Code::Blocks docs page