A compilação da libpng 1.6.14 falha

A compilação da libpng 1.6.14 falha

Eu sou novo em sistemas baseados em Ubuntu/Linux. Preciso compilar a libpng 1.6.14 para analisar um de seus binários. Eu estou correndo:

tar -xvf libpng-1.6.14.tar.xz
cd libpng-1.6.14
sudo bash configure --prefix=/usr/local/libpng   //is running fine without errors
sudo make install

Isto é o que eu recebo:

erro 2, muitas coisas não encontradas

Encontrei um problema semelhanteaqui no Stack Overflow

Tentei manipular o arquivo "libtool" mas sem sucesso. Alguma sugestão?

Responder1

OK, então o problema parece ser porque o fornecido ./libtoolé um script bash,

$ file ./libtool
./libtool: Bourne-Again shell script, ASCII text executable

mas makeo padrão é executá-lo com /bin/sh, que no Ubuntu é vinculado simbolicamente ao dashshell por padrão:

$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Apr  4 10:27 /bin/sh -> dash

e dashnão oferece suporte à concatenação de strings não POSIX +=:

$ dash -c 'foo+=bar'
dash: 1: foo+=bar: not found

Este é realmente o mesmo problema discutido no link que você forneceu, em particularesta resposta

Há muitas maneiras de resolver isso - IMHO, a mais limpa é dizer ao script de configuração para substituir a SHELLvariável padrão do Makefile:

./configure SHELL=/bin/bash --prefix=/usr/local/libpng
make
sudo make install

(Eu sugiro que você comece com uma instalação limpa, ou seja, exclua o diretório libpng-1.6.14 e descompacte o arquivo novamente.)

informação relacionada