如何在netbeans(linux)中链接libs



我正在尝试用c++编写一个程序来分析声音。我想使用libsndfile库。我在g++编译器选项中添加了一个选项-lsndfile。但我得到了一个错误:WavReader.cpp:18:对"sf_open"的未定义引用

如何链接库?请帮忙!

#include <cstdlib>
#include "WavReader.h"
#include <sndfile.h>
#include <iostream>

namespace SA {
    WavReader::WavReader(char* fileName, SoundProcessor* soundProcessor) {
        this->fileName = fileName;
        this->soundProcessor = soundProcessor;
    }
    void WavReader::readFile() {
        SNDFILE* sf = NULL;
        SF_INFO info;
        info.format = 0; 
        sf = sf_open(this->fileName, SFM_READ, &info);
    }
    WavReader::~WavReader() {
    }
}

项目属性->链接器->库->添加选项->另一个选项:-lsndfile

您需要链接到-lsndfile库。。。确保包含库路径,以便从正确的位置找到库。。。检查/usr/lib/以确保它存在于您的系统中,或者为您的libs添加正确位置的路径。。。

相关内容

  • 没有找到相关文章

最新更新