caminhos de libray e cabeçalho do GSL

1

Eu estou tentando instalar um pacote que tem uma dependência no gsl. Nos documentos do pacote, é mencionado:

0. This installation is known to work easily if you use Mac OS X and have 
installed python and gsl using MacPorts.

1. Modify the setup_cfg.py
Change the 'GSL_INCLUDE' and 'GSL_LIB' variables to your path to the GSL
header and library files. For example:
GSL_INCLUDE = 'some_path/gsl-1.15/include'
GSL_LIB = 'some_path/gsl-1.15/lib'

Estou usando o Ubuntu e instalei o gsl usando

sudo apt-get install libgsl0-dev

Como posso encontrar o caminho das bibliotecas gsl? 'some_path / gsl-1.15 / include'; 'algum_caminho / gsl-1.15 / lib'

abhishek:/usr/lib$ pkg-config --libs gsl 
-lgsl -lgslcblas -lm
    
por Abhishek Bhatia 18.12.2015 / 15:23

1 resposta

3

Se você instalou o pacote libgsl0-dev , seus arquivos de cabeçalho devem ter ido em /usr/include/gsl e suas bibliotecas em /usr/lib

Você pode confirmar isso observando a saída do comando dpkg -L libgsl0-dev ou observando a lista de arquivos on-line no link

Eu não acho que seja possível saber a partir do que você postou se o software que você está instalando está esperando o subdiretório gsl - ou seja, se ele quer

GSL_INCLUDE = '/usr/include/gsl'

ou apenas

GSL_INCLUDE = '/usr/include'

(em termos da linguagem C, isso seria a diferença entre algo como #include <gsl/cblas.h> e #include <cblas.h> ). Você pode precisar experimentar os dois.

Observe que /usr/include e /usr/lib são caminhos de pesquisa padrão para ferramentas como gcc . Na maioria das vezes, quando os pacotes de desenvolvimento são instalados em tais caminhos, não é necessário defini-los explicitamente - você verá que pkg-config --cflags --libs não gera nenhuma diretiva de caminho de biblioteca ou de caminho -I ou -L include.

    
por steeldriver 19.12.2015 / 10:28