2009-07-01 2 views
12

私はマイクで録音するために使用するオーディオライブラリであるBASSというライブラリを持っています。私はそれを使用するために必要なすべてのファイルがありますが、ライブラリのインストール方法はわかりません。私は、サンプルファイルをbass.hファイルと同じディレクトリに置くことを試みました。しかし、存在しない関数呼び出しがあるというエラーがたくさんある。C++ライブラリをインストールするにはどうしたらいいですか?

私の質問は、どうすればそれを使用できるようにインストールするのですか?

+0

どのコンパイラ/ IDEを使用しますか?それはVisual Studio、DevC++、Code :: Block、それ以外は何ですか? – kkaploon

+0

ほとんどの図書館にはサンプルプロジェクトがあります。あなたはこれらのいずれかを構築する指示をフォローしましたか? –

+1

@kkaploon、私はコンパイラとしてMinGWでEclipse CDTを使用します。 – rzetterberg

答えて

9

は興味ソフトウェア(例えばコンパイラ)へのファイルの2種類の場所を指定する意味します例えば)。

ヘッダーには、ライブラリ作成者が開発者に公開する宣言が含まれており、プログラムはそのソースコードで#includeします.dllには、プログラムによって一緒に使用またはリンクされるコンパイル済みコードが含まれます。それらはリンカによって検出されます(または動的にロードされますが、これは別のステップです)。

私はBASSライブラリーは、おそらく彼らはいくつかのインストール手順を使用可能にしているので、市販の製品であることがわかりので、あなたは、最終

1) put the header files in a location which your compiler is aware of (typically IDE allows to set so-called include directories, otherwise you specify a flag like "-I<path-to-headers>" when invoking the compiler) 
2) put the dll files in a location which your linker is aware of (surely your IDE will allow that, otherwise you speficy a flag like "-L<path-to-libraries> -l<name-of-libraries>" 

する必要はなく、少なくとも?

1

configure,Makefileまたはinstallのファイルがある場合は、その順番で実行してみてください。その後、このライブラリにリンクしたい任意のプログラムは、このようなコマンドを使用する必要があります。

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

明示的に変更しない限り、ライブラリパスは、通常、元のライブラリフォルダ自体であるか、ライブラリ自体は中にそのファイルを置きます/usr/localなどのようなグローバルな場所。ヘッダ(典型的な拡張子* .hのか.HPP)とコンパイルされたオブジェクト( .dllファイルまたは* .libファイル:C++ライブラリのインストール

+1

彼はWindows MinGWを指定しているので、これは初心者にはあまり明確ではないようです... – Francesco

4

以下のコードを参照してください。exeファイルのディレクトリにbass.dllを置いて、プロジェクトにbass.libファイルを含めてください.bass.hとbassへのパスも含めることを忘れないでくださいプロジェクトのデフォルトのincludeおよび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; 
} 
0

端末またはコンソールでこのコマンドを実行します。出力の最後に

cpp -v 

お知らせ、あなたはこのような行が表示されます:

#include<...> search starts here: 

は、その行の下のディレクトリのリストがあります。 パッケージフォルダをこれらのディレクトリのいずれかに移動します。 次に、<>でモジュールをインポートしてみてください。

関連する問題