【问题标题】:How to copy linked libraries from a code::blocks project to another one?如何将链接库从 code::blocks 项目复制到另一个项目?
【发布时间】:2015-04-16 04:24:08
【问题描述】:

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

【问题讨论】:

标签: c++ linker project libraries portaudio


【解决方案1】:

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

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

(可选)您可以将模板与您希望包含的文件一起保存,它还会将这些文件的副本保存到模板中,并将它们包含在该模板创建的每个新项目中。

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

见the Code::Blocks docs page。

【讨论】:

    【解决方案2】:

    您正在寻找的是一个 Code::Blocks 功能,它可以让您 “基于”前一个项目创建一个新项目,这意味着所有 工具链选项将从以前的项目中复制。

    这很好,但它不存在。

    不过,有一个相当轻松的解决方法,这要归功于以下事实: C::B 确实允许您在现有工具链的基础上定义一个新的工具链。

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

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

    • 您会看到 Selected Compiler。这可能是你想要的那个 你的 PortAudio 工作,假设它是GNU GCC Compiler 4.8。如果 所选编译器恰好 not 是您想要的编译器,然后使用下拉菜单 菜单来选择你想要的。

    • 在所选编译器下方,单击复制按钮。你是 提示添加新编译器,并输入新编译器的名称。 称之为GCC 4.8 for PortAudio,然后点击OK。

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

    • 现在您看到所选编译器是您的新编译器GCC 4.8 for PortAudio, 并且它的所有设置都在您的掌控之中。现在,他们都是 与 GCC 4.8 相同。

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

    现在,GCC 4.8 for PortAudio 是一个“虚拟工具链”,基本上是 GCC 4.8,但为 PortAudio 项目定制。当你想创建 一个新的 PortAudio 项目,无需重新输入所有常用设置, 只需选择 GCC 4.8 for PortAudio 作为项目的编译器 通过项目创建向导,或者选择它作为项目的 创建项目后,从项目的构建选项编译器。

    【讨论】:

    • 谢谢!这么棒的答案。我只是有时间对此进行测试,并且效果很好。这基本上是我想要的。尽管它不是一键式解决方案,但它非常简单,可以完成工作。太棒了!
    猜你喜欢
    • 2012-12-25
    • 2013-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-04
    • 2013-01-15
    • 2017-12-16
    • 1970-01-01
    相关资源
    最近更新 更多