如何安装 c++ 库以便我可以使用它?

Posted

技术标签:

【中文标题】如何安装 c++ 库以便我可以使用它?【英文标题】:How do I install a c++ library so I can use it? 【发布时间】:2010-11-07 08:42:58 【问题描述】:

我有一个名为BASS 的库,它是一个音频库,我将用它来用麦克风录制。我拥有使用它所需的所有文件,但我不知道如何安装该库。我尝试将示例文件放在与 bass.h 文件相同的目录中。但是我收到一堆错误,说有不存在的函数调用。

所以我的问题是,如何安装它才能使用它?

【问题讨论】:

您使用什么编译器/IDE?是 Visual Studio、Devc++、Code::Block 还是其他? 大多数库都带有示例项目。您是否按照说明构建其中之一? @kkaploon,我使用 eclipse CDT 和 MinGW 作为我的编译器。 【参考方案1】:

安装 C++ 库意味着向感兴趣的软件(例如编译器)指定两种文件的位置:头文件(典型扩展名 *.h 或 .hpp)和编译对象 (.dll或 *.lib 例如)。

标头将包含库作者向开发人员公开的声明,您的程序将在其源代码中#include 它们,dll 将包含编译后的代码,这些代码将被或链接在一起并由您的程序使用,并且它们将被链接器找到(或动态加载,但这是另一个步骤)。

所以你需要

    将头文件放在编译器知道的位置(通常 IDE 允许设置所谓的包含目录,否则在调用编译器时指定 -I<path-to-headers> 之类的标志) 将 dll 文件放在您的链接器知道的位置(您的 IDE 肯定会允许这样做,否则您会指定像 -L<path-to-libraries> -l<name-of-libraries> 这样的标志

最后但同样重要的是,由于我看到 BASS 库是一个商业产品,他们可能会提供一些安装说明?

【讨论】:

如果我开发了一个库,它应该安装在客户端机器的什么位置?具体来说,Windows 上等同于/usr/include/usr/lib 的标准路径是什么?【参考方案2】:

在终端或控制台中运行此命令。

cpp -v

注意在输出的最后,你会看到这样一行:

#include<...> search starts here:

该行下方会有一个目录列表。 将包文件夹移动到这些目录之一。 然后尝试使用 .

导入模块

【讨论】:

所以在cpp -v 之后,终端有点进入编辑模式,我不知道如何退出。请告诉我们输入cpp -v后如何退出编辑模式?【参考方案3】:

请参阅下面的代码,不要忘记将 bass.dll 放在 exe 文件的目录中,并将文件 bass.lib 包含在您的项目中,不要忘记还包含 bass.h 和 bass 的路径。 lib 在项目的默认包含和 lib 路径中。

#include <iostream>
#include "bass.h"

using namespace std;

int main(int argc, const char **argv)

   if (!BASS_Init(-1, 44100, 0, NULL ,NULL)) 
   
   cout<<"Can't initialize device";
   return -1;
   

            int stream = BASS_StreamCreateFile(false, "D:\\mypro\\Trans_Langs\\germ\\quran_amma\\Translations\\Sound_aya\\Sora1\\Hafs\\basfar\\a7.mp3", 0L, 0L, 0);
            if (stream != 0)
            
                // play the stream channel
                BASS_ChannelPlay(stream, false);
            
            else
            
                // error creating the stream
                cout<<"Stream error: 0", BASS_ErrorGetCode();
            

   getchar();

            BASS_StreamFree(stream);
            // free BASS
            BASS_Free();

 return 0;

【讨论】:

【参考方案4】:

如果有名为configureMakefileinstall 的文件,您可以尝试按该顺序运行它们。之后,任何想要与该库链接的程序都必须使用如下命令:

c++ <your_program.cpp> -l<library_name> -L<path_where_library_is_installed>

库路径通常是原始库文件夹本身,除非您明确更改它或库本身将其文件放在全局位置,如/usr/local 或类似的位置。

【讨论】:

以上是关于如何安装 c++ 库以便我可以使用它?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Ubuntu C++ 库移植到 MinGW?

如何设计一个仅在其中一个部分使用 CUDA 的库,以便其他部分在没有安装 CUDA 的情况下也可以工作?

基于python如何建立人脸库

小白学习C++ 教程二十三如何安装和使用 C++ 标准库

小白学习C++ 教程二十三如何安装和使用 C++ 标准库

如何将犰狳库修复为 C++