Pergunta

Eu tenho essa biblioteca chamada BASS que é uma biblioteca de áudio que eu vou usar para gravar com o microfone. Eu tenho todos os arquivos necessários para usá-lo, mas eu não sei como instalar a biblioteca. Tentei tirar os arquivos de exemplo e colocá-los no mesmo diretório que o arquivo bass.h. Mas eu tenho um monte de erros dizendo há chamadas de função que não existe.

Assim, a minha pergunta é: como faço para instalá-lo para ser capaz de usá-lo?

Foi útil?

Solução

A instalação de um C ++ meio biblioteca especificando a software interessados ??a localização de dois tipos de arquivos (por exemplo, um compilador.): Cabeçalhos (extensões típicas * .h ou .hpp) e compilados objetos ( .dll ou * .lib por exemplo).

Os cabeçalhos conterá as declarações expostos ao desenvolvedor pelos autores da biblioteca, e seu programa será #include-los em seu código-fonte, o dll irá conter o código compilado que será ou ligados entre si e usado por seu programa, e eles serão encontrados pelo ligante (ou dinamicamente carregadas, mas este é um outro passo).

Então, você precisa

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>"

Por último, mas não menos importante, uma vez que eu vejo que a biblioteca BASS é um produto comercial, provavelmente eles vão ter disponibilizado algumas instruções de instalação?

Outras dicas

Veja o código abaixo o código e Don se esqueça de colocar bass.dll no diretório do seu arquivo exe e incluem a bass.lib arquivo com seu projeto e don não se esqueça também de incluir o caminho para bass.h e baixo. lib no padrão incluem eo caminho lib do seu projeto.

#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;
}

Se houver arquivos chamados configure, Makefile ou install você pode tentar executá-los nessa ordem. Depois disso, qualquer programa que quer vínculo com esta biblioteca deve usar um comando como este:

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

O caminho da biblioteca é geralmente a biblioteca original pasta em si, a menos que você alterá-lo ou a biblioteca em si coloca seus arquivos em locais globais como /usr/local ou algo parecido explicitamente.

Executar este comando em um console do terminal ou.

cpp -v

Observe no final da saída, você verá uma linha como esta:

#include<...> search starts here:

Haverá uma lista de diretórios abaixo dessa linha. Mova a pasta pacote para um desses diretórios. Em seguida, tente importar o módulo com <>.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top