5

音を分析するためにC++でプログラムを書こうとしています。libsndfileライブラリを使用したい。オプション-lsndfileをg++コンパイラオプションに追加しました。しかし、エラーが発生します: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() {
    }
}
4

2 に答える 2

6

プロジェクトのプロパティ->リンカー->ライブラリ->オプションの追加->別のオプション:-lsndfile

于 2013-02-23T13:54:58.363 に答える
2

-lsndfileライブラリに対してリンクする必要があります...ライブラリパスが含まれていることを確認して、正しい場所からライブラリを検索します... / usr / lib /をチェックして、システムに存在することを確認するか、正しい場所のパスを追加します。あなたのライブラリ...

于 2013-02-23T12:12:11.520 に答える