pkg-config no cygwin não encontrará o pacote gsl

pkg-config no cygwin não encontrará o pacote gsl

Estou tentando usar o método Cygwin para reaprender C usando o livro 21st Century C de Ben Klemens. Instalei o Cygwin e tenho usado o apt-cyg para instalar os pacotes mencionados no livro. Os pacotes parecem instalar bem, posso chamar gcc, make, pkg-config, etc... mas o pkg-config não consegue encontrar nada. Mais especificamente, isso não consegue encontrar nada:

$ pkg-config --libs gsl
$ pkg-config --cflags gsl

Já vi algumas perguntas que falam sobre mudar o caminho. Eu tentei mudar para:

$ export PKG_CONFIG_PATH=c:\\cygwin\\usr\\local\\lib\\pkgconfig
$ export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
$ export PKG_CONFIG_PATH=C:\\cygwin\\bin

Eu também já tenho tudo isso instalado:

  • binutils
  • gcc
  • núcleo gcc
  • gcc-g++
  • fazer
  • gdb
  • gsl

Verifiquei que eles estão instalados usando:

$ cygcheck -c | grep {string}

Admito que não estou muito familiarizado com sistemas Linux, caso contrário, seria meu sistema principal e não usaria o Cygwin;)

Responder1

Eu estava definindo o caminho errado, pensei que o comando de exportação estava adicionando caminhos à variável PKG_CONFIG_PATH, obviamente eu precisava prefixar a variável no início (assim como devo fazer no Windows :) e separar com dois pontos se Eu realmente queria adicionar caminhos

$ export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:{my_new_path}

Mas esse não era o verdadeiro problema de por que o pkg-config não conseguiu encontrar o gsl, embora eu pensasse ter instalado o pacote, o que eu realmente precisava instalar era o gsl-devel, e então ele adicionaria seu arquivo .pc a / lib/pkgconfig.

Então, para recapitular, precisei usar meu gerenciador de pacotes para instalar {nome do pacote}-devel (gsl-devel), que adicionaria o arquivo {nome do pacote}.pc relevante (gsl.pc).

Defina a variável corretamente:

$ export PKG_CONFIG_PATH=/lib/pkgconfig

então pegue o pacote de desenvolvimento:

$ apt-cyg install gsl-devel

informação relacionada